yeller is a

go error tracker

Shipping bugs really sucks

These bugs made it past your test suite, past Go's powerful static types, past your reasoning about the system, past your careful manual checking and into your customers' hands.

So, once you know about a bug, you need to fix it as fast as possible. This means you need to find out exactly what happened, with all the useful and relevant information at your fingertips.

Go has a different style of error handling, one that promotes more careful thought from the programmer. The problem is that just plain logging of errors doesn't let you diagnose them well enough.

How do you find out if an error has been happening a whole bunch of times? By SCPing a bunch of log files and grepping through them?

That's not good enough for production

You need to be able to deduplicate your errors smartly, so you can see what's broken

You need a full stacktrace, and logging of arbitrary data on every error.

You need Yeller.

Track your errors

Yeller tracks the errors your customers hit in production so you can fix them faster.

Yeller's Go client is fully open source, and there are detailed install instructions in the repository

file, err := os.Open("filename.ext")
if err != nil {

        // Notify the error by itself, with additional information
        // about what was going on when the error happened.
        info := make(map[string]interface{})
        info["filename"] = "filename.ext"
        yeller.NotifyInfo(err, info)


http.HandleFunc("/foo", func(w http.ResponseWriter, req *http.Request) {
        file, err := os.Open("filename.ext")
        if err != nil {

                // Log an error to yeller with HTTP request information
                // in addition to information pertinent to the error.
                info := make(map[string]interface{})
                info["filename"] = "filename.ext"
                yeller.NotifyHTTPInfo(err, request, info)

                // Alternatively, just log information about the HTTP request.
                yeller.NotifyHTTP(err, request)


Full understanding of your go errors

Yeller really understands your go errors. It records a full stacktrace, http params and more for each exception.

Don't get mystified by your production go errors again. Switch to Yeller.

All the details

Yeller grabs all the relevant context from your errors, so you can figure out what went wrong quickly.

  1. The full type and error message
  2. The full stacktrace - nothing trimmed here
  3. Full context from the place the error happened (for HTTP requests, this includes params, cookies, and so on. For background jobs, this might include the job parameters)

Automatic Diagnosis

Yeller automatically investigates each of your exceptions across every time they happen, and picks out any unique piece of context

Find out about exceptions that were:

  • Caused by one of your servers behaving badly
  • Isolated to an individual customer
  • Or any other piece of data you can think of

Suspect deploy

Most exceptions in production are caused by code changes.

Yeller can track your deploys, and highlight the deploy that likely caused the exception you're debugging.

If you use github, Yeller will even link to a diff of what was deployed, so you can see what changed immediately.

Start your free 30 day trial now

Try Yeller Now