Faultline

Error tracking tool on AWS managed services.

View on Github

faultline Build Status GitHub release Coverage Status

Error tracking tool on AWS managed services.

logo

Migration Guide: from v0.x to v1.x

Table of Contents

Concept

Using framework

  • Serverless Framework :zap:

AWS Resources

  • AWS Lambda
  • API Gateway
  • Amazon S3
  • Amazon DynamoDB
  • IAM
  • KMS (option)

How to deploy

:octocat: STEP 1. Clone

$ git clone https://github.com/faultline/faultline.git
$ cd faultline
$ npm install

:pencil: STEP 2. Set environment variables OR Edit config.yml

Set environment variables.

OR

Copy config.default.yml to config.yml. And edit.

Environment / config.yml Document is here :book: .

:rocket: STEP 3. Deploy to AWS

$ AWS_PROFILE=XXxxXXX npm run deploy

:bomb: Destroy faultline

  1. Delete all projects (or Empty S3 bucket).
  2. Run following command.
$ AWS_PROFILE=XXxxXXX npm run destroy

Usage

POST errors using cURL

Example:

$ curl -X POST -H "x-api-key: xxxxXXXXXxXxXXxxXXXXXXXxxxxXXXXXX" -H "Content-Type: application/json" -d @sample-errors.json https://xxxxxxxxx.execute-api.ap-northeast-1.amazonaws.com/v0/projects/sample-project/errors

Sample errors POST JSON file is here.

API Document is here :book: .

POST errors using library

Notifications

When receive error, faultline can send nofitications with POST config.

More document is here :book: .

:speech_balloon: Slack

slack

:octocat: GitHub issue

GitHub

:large_orange_diamond: GitLab issue

GitLab

API

API Document generated by jdoc.

JSON Hyper-Schema is here :book: .

Web UI

Sample web UI for faultline

https://github.com/faultline/faultline-webui

Web UI

Architecture

"Architecture of faultline" document is here :book: .

Run test

$ docker-compose up -d
$ npm run test

Docker for Mac

$ TMPDIR=/private$TMPDIR docker-compose up -d
$ npm run test

Contribute

PRs accepted.

License

MIT © Ken'ichiro Oyama