Permalink
Switch branches/tags
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
84 lines (80 sloc) 2.69 KB

Desole.io event format

  • All values are strings unless specified otherwise
  • All values are mandatory in the SNS Event unless specified otherwise
  • Check out test events for examples

Fields

  • id
    • purpose: unique event ID so you can trace the same event in multiple storage systems (eg from dashboard to logs)
    • collected at: API (lambdaContext.awsRequestId)
  • severity
    • purpose: error significance (eg fatal)
    • valid values: fatal, error, warning, info, debug
    • example: fatal
    • collected at: client
    • collector defaults to: error
  • stack
    • purpose: detailed error stack trace
    • example: info.js:10
    • collected at: client
  • type
    • purpose: error code classification
    • example: SyntaxError
    • collected at: client
  • timestamp
    • purpose: time filtering and reporting
    • type: javascript time stamp (milliseconds), number
    • collected at: client
  • receivedAt
    • purpose: time filtering and reporting
    • type: javascript time stamp (milliseconds), number
    • collected at: API
  • resource
    • purpose: identify the resource causing the exception, eg a page URL, a service or an executable app name
    • collected at: client
  • referrer
    • collected at: API (headers["Referrer"])
  • app: JSON-key-value pairs
    • collected at: client
    • purpose: classify errors for individual apps in the dashboards
    • app.name
      • purpose: marketing name of the app
      • example: Pizzeria front-end
    • app.version
      • purpose: identify individual code versions
      • example: 3.0.1
    • app.stage
      • purpose: differentiate between production/testing/development
      • example: production
  • tags: optional
    • type: JSON key-value pairs
    • purpose: user-defined event categorisation
    • example: {userType: 'freemium', trial: 'yes' }
    • collected at: client
  • endpoint
    • id
      • collected at: client
      • purpose: uniquely identify a client device, such as a browser, especially for AWS pinpoint integration
      • example: 123-1455-1245-123466
      • collector defaults to: autogenerated UUID, stored to local storage or cookies
      • collected at: client
    • language
      • collected at: client (navigator.language)
    • platform
      • collected at: client (navigator.platform)
      • example: MacIntel
    • os
      • example: MacOS
    • osVersion
      • example: 10.12.1
    • runtime
      • example: NodeJs / Chrome
    • runtimeVersion
      • example: 8.10
    • country
      • collected at: API (headers["CloudFront-Viewer-Country"])
    • userAgent
      • purpose: a vendor specific label identifying the endpoint technically
      • collected at: API (requestContext.identity.userAgent)
    • deviceType:
      • SmartTV | Mobile | Desktop | Tablet
      • collected at: API (headers(["CloudFront-Is-XXX-Viewer"])