I want to test this product, and I'm in a position where I could spend real money on a purchase or subscription to this service in the event that it does what we need.
Unfortunately, as soon as I see that data is sent off-site, I immediately discard this as a product which my organisation can use.
Reasons
1. I am an engineer, working in a highly regulated environment. Regulated environments excel at buying things, or subscribing to things - we have whole teams of people that are delighted to spend money on our behalf. They also tend to have immense amounts of process overhead, whenever you interact with third parties on subjects relating to intellectual property or the confidentiality of client data.
Your assurances on encryption, confidentiality, etc. are irrelevant to me; you could have invented a perfect cryptosystem, but regulations would still prohibit me from exporting data outside of our organisation.
2. I don't want to build reliance on something which is outside of my control. This might be the greatest tool ever built, but if I'm building monitoring systems for production systems, I need to have confidence that they are available, irrespective of your schedule for upgrading / supporting / maintaining your product.
Why should a tool fail, just because the people that built the tool are no longer around?
Short takeaway - my suggestion is that you consider those of us who are not fortunate enough to work in unregulated industries, and produce a self-hosted version of your application (as GitHub do) which can be run on our own infrastructure. There's revenue there which is being ignored. You might feel that centralising your service means that crackers can't steal your tool and use it for free. I would argue that the people that actually care about running this locally are the sort of people that will be paying you, handsomely, for it.
Hi Steve. These are some valid points you're making. We are currently considering an on-premises solution for precisely this situation you are describing.
This is something we'd run as a small pilot as well, and we do work with SaaS, but any SaaS option we use has to be verified through our internal security department.
This makes quick trials basically impossible for SaaS based services.
An internally hosted solution would let me do a pilot and demonstrate benefits internally. If this becomes an option, I'd give this a try.
My gut tells me that SaaS is the wrong play here. Offering a hosted option is nice, but half of my projects will flat-out not use any third-party service as part of the dev environment, it all has to be self-hosted, and many of the other half are reluctant to do so. I think you might find more opportunities by offering it as a self-hosted app/appliance.
Actually very unattractive for a hosted service. I won't spend time on something that may disappear without warning or start charging $1000 per month per server CPU.
I'm afraid I have to agree with brazzy; you're asking people to invest a fair amount of time, and potentially come to depend on a tool that they have no idea if they will be able to afford once you start charging money.
When you install Takipi, you are asked to enter your top packages (e.g. "com.mycompany;org.foobar.common"). Code outside of the filter will not be shown to you when viewing stack traces.
In addition, if, for an example, an exception is thrown by Spring AND caught by Spring, you will not receive an event for that case.
This seems pretty legit. I really like the personality you gave the site with its design.
Do you have any plans to support GitHub repositories as a location to pull source from in the event we don't really want to deploy a jar with our source in it?
Takipi lets you attach your own source code to the project, so you will see your original source code when viewing exceptions and other events, instead of decompiled Java.
Support for prettier stack traces is in the planning.
If I understand correctly does the takipi daemon, upload all the debug info. collected from our server to the takipi server via Internet. Then I use app.takipi.com to access the same?
Takipi's agent records information which is relevant to the issues which are detected (exceptions, latency problems, custom conditions set by the developer).
The data and source code are then encrypted with your secret 256-bit AES key and stored by Takipi. This data is in turn decrypted in your browser and viewed by you at app.takipi.com.
I know it works on the JVM level, but we use Glassfish a lot in production and I'm interested in finding out exactly how practical it is to use Takipi with Glassfish?
What people sometimes fail to realize is that proper testing disciplines can mitigate practically all bugs in production. I haven't seriously used a debugger in 2 years, methinks. So giving developers "X-ray vision" to their servers in production, however innovative, is not a real solution.
Even if you were the team of mythical coders that foresees every possible corner case and is never under time pressure, you'll probably rely on millions of lines of code written by other organisations, that do contain bugs.
Applications fail; it's a real life fact. The most talented teams face bugs, even in applications which undergo extensive testing. Not to mention scenarios which are very hard to anticipate and simulate, mainly ones related to fast scaling.
As you are down voted I wonder: I have the same experience here. Very few serious problems (1/year) that come from developer bugs. Others seem to have much more, e.g. when people ask me if the devs here have pager duty (which they haven't).
I also wonder if we test too much (ca. 85% path coverage, 15k unit tests (3x rewritten), automatic selenium tests, explorative manual tests, automatic API tests, developer acceptance tests).
The most efficient use of resources is almost always proportionate allocation between code and other things. So if only a small proportion of your serious problems are code errors then you're either testing too much or not doing enough at other levels of the stack.
The real questions of course are whether your defect rate and the rate at which you introduce new features are where you want them to be.
Since even you admit testing does not eliminate all bugs, there are still cases when defects make it into production. Novel cases do happen, and some can be quite difficult to understand. I can see how this tool could be useful in those situations.
Unfortunately, as soon as I see that data is sent off-site, I immediately discard this as a product which my organisation can use.
Reasons
1. I am an engineer, working in a highly regulated environment. Regulated environments excel at buying things, or subscribing to things - we have whole teams of people that are delighted to spend money on our behalf. They also tend to have immense amounts of process overhead, whenever you interact with third parties on subjects relating to intellectual property or the confidentiality of client data.
Your assurances on encryption, confidentiality, etc. are irrelevant to me; you could have invented a perfect cryptosystem, but regulations would still prohibit me from exporting data outside of our organisation.
2. I don't want to build reliance on something which is outside of my control. This might be the greatest tool ever built, but if I'm building monitoring systems for production systems, I need to have confidence that they are available, irrespective of your schedule for upgrading / supporting / maintaining your product.
Why should a tool fail, just because the people that built the tool are no longer around?
Short takeaway - my suggestion is that you consider those of us who are not fortunate enough to work in unregulated industries, and produce a self-hosted version of your application (as GitHub do) which can be run on our own infrastructure. There's revenue there which is being ignored. You might feel that centralising your service means that crackers can't steal your tool and use it for free. I would argue that the people that actually care about running this locally are the sort of people that will be paying you, handsomely, for it.