Live data from Hacker News

Show HN: Java Bullshifier

takipi.github.io

51–60 of 84 posts

Re: Show HN: Java Bullshifier

#51
post #46
post #8

Hi, Alex from OverOps here. We've created the "Bullshifier" internally to stress test edge cases with our own monitoring tool ( http://www.overops.com ). Whenever an exception or a logged error / warning happens in production, it shows you the complete source code leading to it, and the full variable state across the entire call stack. Using Java Bullshifier, we're able to generate random applications with call stack…

How were you able to go back in time to create Spring?

joda-time + java.util.delorean

Re: Show HN: Java Bullshifier

#52

I wonder if you could use genetic algorithms on codebases like these to make them do something useful.

I wonder how much I'd have to spend on AWS if I just wrote the acceptance tests for our next project, then ran this in a loop/cluster until it wrote something that passed UAT... :)

Re: Show HN: Java Bullshifier

#53

I'm glad to learn that entire businesses exist thanks to the fact that Java has overly verbose exception outputs which are designed to hide the information you are seeking between 200 lines of call stack prints.

Java's exceptions are not overly verbose. Blame bad developers and worse architects for insane stack depths.

Re: Show HN: Java Bullshifier

#54

I'm glad to learn that entire businesses exist thanks to the fact that Java has overly verbose exception outputs which are designed to hide the information you are seeking between 200 lines of call stack prints.

> overly verbose exception outputs

I would love to have that problem. I work with old PHP where frequently it just barfs a fatal error with no stack-trace at all.

Re: Show HN: Java Bullshifier

#56
post #47
post #33

Earlier quoted context omitted.

You mean like Sentry? That's been around for ages.

Sentry doesn't give you the local variable state at the moment of error. Only environment related data. We use it as well, but only for JS frontend. It's more of an error tracker, rather than a root cause analysis tool. The benefit is that it's wider and doesn't only focus on Java, but you'll still need to spend time going through logs to actually troubleshoot those errors and understand what was wrong with the state…

> Sentry doesn't give you the local variable state at the moment of error.

I noticed the sentry json API at least supports them, so this may be a limitation of the specific language SDK as currently stands:

https://docs.sentry.io/clientdev/interfaces/stacktrace/ (see "vars")

(I'm fiddling around with writing a Windows C++ SDK for sentry with a C ABI...)

Re: Show HN: Java Bullshifier

#57

Kind of off topic, but this reminds me of my internship this summer. What sucks about Spring is the horrible error messages. If there is something wrong in the XML configuration, or dependency configuration, it doesn't actually tell you that. Instead, it shows a deep stack trace with some strange exception that doesn't relate to the problem at all.

Then stop using spring. Don't get sucked into the vortex of using overhyped tools that require consultant engagements to fix production bugs.

Re: Show HN: Java Bullshifier

#59
post #32

Earlier quoted context omitted.

As an experienced Java developer I love long Java stacktraces and I miss them in most languages. In 90% cases stacktrace allows to find a bug without any debugging, because it's just very obvious where it is. Of course if someone doesn't care about exceptions, it's just a bad style. Exception in the production log is like red light and alarm sound, BUG-BUG-BUG. I saw projects, which throw stacktrace after stacktrace,…

and then archived those teralogs and noone ever watched them I champion Sentry wherever I go, as it has an outstanding "fold these common explosions into one event" behavior, in addition to managing the _lifecycle_ of an exception/error, from first encounter through resolved in release, to the dreaded reoccurence. I do keep a terminal open for my curiosity but I'm much happier with computers watching logs than me hav…

Sentry is outstanding for this! There's an open source self hosted version available too.

Re: Show HN: Java Bullshifier

#60
post #59
post #32

Earlier quoted context omitted.

and then archived those teralogs and noone ever watched them I champion Sentry wherever I go, as it has an outstanding "fold these common explosions into one event" behavior, in addition to managing the _lifecycle_ of an exception/error, from first encounter through resolved in release, to the dreaded reoccurence. I do keep a terminal open for my curiosity but I'm much happier with computers watching logs than me hav…

Sentry is outstanding for this! There's an open source self hosted version available too.

That's the one I exclusively use because I'm a control freak :-)
Post reply on HN