{"id":23959512,"url":"https://github.com/airbrake/gobrake","last_synced_at":"2025-05-16T14:07:40.531Z","repository":{"id":4725280,"uuid":"5873801","full_name":"airbrake/gobrake","owner":"airbrake","description":"Airbrake notifier for Golang","archived":false,"fork":false,"pushed_at":"2025-03-18T02:24:19.000Z","size":1058,"stargazers_count":105,"open_issues_count":10,"forks_count":40,"subscribers_count":23,"default_branch":"master","last_synced_at":"2025-05-14T02:14:14.344Z","etag":null,"topics":["airbrake","error-reporting","go","golang","notifier"],"latest_commit_sha":null,"homepage":"https://docs.airbrake.io/docs/platforms/go-lang","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/airbrake.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2012-09-19T15:19:50.000Z","updated_at":"2025-02-20T01:17:45.000Z","dependencies_parsed_at":"2023-02-19T03:40:34.304Z","dependency_job_id":"e4be6612-0c8b-4fd6-8466-fc1f41f6720b","html_url":"https://github.com/airbrake/gobrake","commit_stats":{"total_commits":444,"total_committers":24,"mean_commits":18.5,"dds":0.6058558558558558,"last_synced_commit":"1f7f2f4bacc2c537ebfc23b8a9747e356418ef4c"},"previous_names":[],"tags_count":69,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/airbrake%2Fgobrake","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/airbrake%2Fgobrake/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/airbrake%2Fgobrake/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/airbrake%2Fgobrake/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/airbrake","download_url":"https://codeload.github.com/airbrake/gobrake/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254544146,"owners_count":22088807,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["airbrake","error-reporting","go","golang","notifier"],"created_at":"2025-01-06T18:30:59.764Z","updated_at":"2025-05-16T14:07:40.511Z","avatar_url":"https://github.com/airbrake.png","language":"Go","readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://airbrake-github-assets.s3.amazonaws.com/brand/airbrake-full-logo.png\" width=\"200\"\u003e\n\u003c/p\u003e\n\n# Gobrake\n\n[![.github/workflows/test.yml](https://github.com/airbrake/gobrake/actions/workflows/test.yml/badge.svg?branch=master)](https://github.com/airbrake/gobrake/actions/workflows/test.yml)\n[![PkgGoDev](https://pkg.go.dev/badge/airbrake/gobrake)][docs]\n\n* [Gobrake official documentation][docs-official]\n* [pkg.go.dev documentation][docs]\n\n## Introduction\n\n_Gobrake_ is the official notifier package for [Airbrake][airbrake.io] for the\nGo programming language. Gobrake provides a minimalist API that enables the\nability to send _any_ Go error or panic to the Airbrake dashboard. The library\nis extremely lightweight, with minimal overhead.\n\n## Key features\n\n* Simple, consistent and easy-to-use library API\n* Asynchronous exception reporting\n* Flexible configuration options\n* Support for environments\n* Add extra context to errors before reporting them\n* Filters support (filter out sensitive or unwanted data that shouldn't be sent)\n* Ignore errors based on class, message, status, file, or any other filter\n* SSL support (all communication with Airbrake is encrypted by default)\n* Notify Airbrake on panics\n* Set error severity to control notification thresholds\n* Support for code hunks (lines of code surrounding each backtrace frame)\n* Automatic deploy tracking\n* Performance monitoring features such as HTTP route statistics, SQL queries,\n  and Job execution statistics\n* Integrations with [Beego][beego], [Buffalo][buffalo], [Echo][echo], [fasthttp][fasthttp], [Fiber][fiber],\n[Gin][gin], [gorilla/mux][gorilla], [Iris][iris], [Negroni][negroni] and [net/http][nethttp]\n* Last but not least, we follow [semantic versioning 2.0.0][semver2]\n\n## Installation\n\nWhen using Go Modules, you do not need to install anything to start using Airbrake with your Go application. Import the package and the go tool will automatically download the latest version of the package when you next build your program.\n\n```go\nimport (\n\t\"github.com/airbrake/gobrake/v5\"\n)\n```\n\nWith or without Go Modules, to use the latest version of the package, run:\n\n```sh\ngo get github.com/airbrake/gobrake/v5\n```\n\n### Installing in a new project\n\nCreate a new directory, initialize a new module and `go get` the library:\n\n```sh\nmkdir airbrake_example \u0026\u0026 cd airbrake_example\ngo mod init airbrake_example\ngo get github.com/airbrake/gobrake/v5\n```\n\n## Example\n\nThis is the minimal example that you can use to test Gobrake with your project.\n\n```go\npackage main\n\nimport (\n\t\"errors\"\n\n\t\"github.com/airbrake/gobrake/v5\"\n)\n\nvar airbrake = gobrake.NewNotifierWithOptions(\u0026gobrake.NotifierOptions{\n\tProjectId:   \u003cYOUR PROJECT ID\u003e, // \u003c-- Fill in this value\n\tProjectKey:  \"\u003cYOUR API KEY\u003e\", // \u003c-- Fill in this value\n\tEnvironment: \"production\",\n})\n\nfunc main() {\n\tdefer airbrake.Close()\n\n\tairbrake.Notify(errors.New(\"operation failed\"), nil)\n}\n```\n\n### ProjectId \u0026 ProjectKey\n\nYou **must** set both `ProjectId` \u0026 `ProjectKey`.\n\nTo find your `ProjectId` (`int64`) and `ProjectKey` (`string`) navigate to your\nproject's _Settings_ and copy the values from the right sidebar.\n\n![id-key][project-idkey]\n\n## Getting Started\n\nTo check the complete Guide, visit our official [docs][docs-official].\n\n## API\n\nFor complete API description please follow documentation on [pkg.go.dev\ndocumentation][docs].\n\n\u003e **Note**: Gobrake provides middleware out of\nthe box and you may find our example apps more helpful:\n\n* [Beego](examples/beego)\n* [Buffalo](examples/buffalo)\n* [Echo](examples/echo)\n* [fasthttp](examples/fasthttp)\n* [Fiber](examples/fiber)\n* [Gin](examples/gin)\n* [gorilla/mux](examples/gorilla)\n* [Iris](examples/iris)\n* [Negroni](examples/negroni)\n* [net/http](examples/http)\n\n## Additional notes\n\n### Exception limit\n\nThe maximum size of an exception is 64KB. Exceptions that exceed this limit\nwill be truncated to fit the size.\n\n### Logging\n\nWe support major logging frameworks:\n\n* There's a [glog fork][glog], which integrates with Gobrake. It provides all of\noriginal glog's functionality and adds the ability to send errors/logs to\n[Airbrake.io][airbrake.io].\n* [apex/log][apexlog], to check how to integrate gobrake with apex/log, see [example](examples/apexlog).\n* [zerolog][zerolog], to check how to integrate gobrake with zerolog, see [example](examples/zerolog).\n* [zap][zap], to check how to integrate gobrake with zap, see [example](examples/zap).\n\n## Supported Go versions\n\nThe library supports Go v1.17+. The CI file would be the best source of truth\nbecause it contains all Go versions that we test against.\n\n## Contact\n\nIn case you have a problem, question or a bug report, feel free to:\n\n* [file an issue][issues]\n* [send us an email](mailto:support@airbrake.io)\n* [tweet at us][twitter]\n* chat with us (visit [airbrake.io][airbrake.io] and click on the round orange\n    button in the bottom right corner)\n\n## License\n\nThe project uses the MIT License. See [LICENSE.md](https://github.com/airbrake/gobrake/blob/master/LICENSE.md) for details.\n\n[airbrake.io]: https://airbrake.io\n[docs-official]: https://docs.airbrake.io/docs/platforms/go-lang/\n[docs]: https://pkg.go.dev/github.com/airbrake/gobrake/v5\n[beego]: https://github.com/beego/beego\n[buffalo]: https://github.com/gobuffalo/buffalo\n[echo]: https://github.com/labstack/echo\n[fasthttp]: https://github.com/valyala/fasthttp\n[fiber]: https://github.com/gofiber/fiber\n[gin]: https://github.com/gin-gonic/gin\n[gorilla]: https://github.com/gorilla/mux\n[iris]: https://github.com/kataras/iris\n[negroni]: https://github.com/urfave/negroni\n[nethttp]: https://pkg.go.dev/net/http\n[semver2]: http://semver.org/spec/v2.0.0.html\n[project-idkey]: https://s3.amazonaws.com/airbrake-github-assets/gobrake/project-id-key.png\n[issues]: https://github.com/airbrake/gobrake/issues\n[twitter]: https://twitter.com/airbrake\n[glog]: https://github.com/airbrake/glog\n[apexlog]: https://github.com/apex/log\n[zerolog]: https://github.com/rs/zerolog\n[zap]: https://github.com/uber-go/zap\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fairbrake%2Fgobrake","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fairbrake%2Fgobrake","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fairbrake%2Fgobrake/lists"}