summaryrefslogtreecommitdiffstats
path: root/vendor/gopkg.in/airbrake/gobrake.v2/notice.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/gopkg.in/airbrake/gobrake.v2/notice.go')
-rw-r--r--vendor/gopkg.in/airbrake/gobrake.v2/notice.go105
1 files changed, 0 insertions, 105 deletions
diff --git a/vendor/gopkg.in/airbrake/gobrake.v2/notice.go b/vendor/gopkg.in/airbrake/gobrake.v2/notice.go
deleted file mode 100644
index 06bc771a..00000000
--- a/vendor/gopkg.in/airbrake/gobrake.v2/notice.go
+++ /dev/null
@@ -1,105 +0,0 @@
-package gobrake
-
-import (
- "fmt"
- "net/http"
- "os"
- "path/filepath"
- "runtime"
-)
-
-var defaultContext map[string]interface{}
-
-func getDefaultContext() map[string]interface{} {
- if defaultContext != nil {
- return defaultContext
- }
-
- defaultContext = map[string]interface{}{
- "notifier": map[string]interface{}{
- "name": "gobrake",
- "version": "2.0.4",
- "url": "https://github.com/airbrake/gobrake",
- },
-
- "language": runtime.Version(),
- "os": runtime.GOOS,
- "architecture": runtime.GOARCH,
- }
- if s, err := os.Hostname(); err == nil {
- defaultContext["hostname"] = s
- }
- if s := os.Getenv("GOPATH"); s != "" {
- list := filepath.SplitList(s)
- // TODO: multiple root dirs?
- defaultContext["rootDirectory"] = list[0]
- }
- return defaultContext
-}
-
-type Error struct {
- Type string `json:"type"`
- Message string `json:"message"`
- Backtrace []StackFrame `json:"backtrace"`
-}
-
-type Notice struct {
- Errors []Error `json:"errors"`
- Context map[string]interface{} `json:"context"`
- Env map[string]interface{} `json:"environment"`
- Session map[string]interface{} `json:"session"`
- Params map[string]interface{} `json:"params"`
-}
-
-func (n *Notice) String() string {
- if len(n.Errors) == 0 {
- return "Notice<no errors>"
- }
- e := n.Errors[0]
- return fmt.Sprintf("Notice<%s: %s>", e.Type, e.Message)
-}
-
-func NewNotice(e interface{}, req *http.Request, depth int) *Notice {
- notice := &Notice{
- Errors: []Error{{
- Type: fmt.Sprintf("%T", e),
- Message: fmt.Sprint(e),
- Backtrace: stack(depth),
- }},
- Context: map[string]interface{}{},
- Env: map[string]interface{}{},
- Session: map[string]interface{}{},
- Params: map[string]interface{}{},
- }
-
- for k, v := range getDefaultContext() {
- notice.Context[k] = v
- }
-
- if req != nil {
- notice.Context["url"] = req.URL.String()
- if ua := req.Header.Get("User-Agent"); ua != "" {
- notice.Context["userAgent"] = ua
- }
-
- for k, v := range req.Header {
- if len(v) == 1 {
- notice.Env[k] = v[0]
- } else {
- notice.Env[k] = v
- }
- }
-
- if err := req.ParseForm(); err == nil {
- for k, v := range req.Form {
- if len(v) == 1 {
- notice.Params[k] = v[0]
- } else {
- notice.Params[k] = v
- }
- }
- }
- }
-
- return notice
-}