diff --git a/.circleci/config.yml b/.circleci/config.yml index a84064b3e7..869d71554f 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -43,6 +43,7 @@ jobs: - ./packages/core-database-postgres/node_modules - ./packages/core-elasticsearch/node_modules - ./packages/core-error-tracker-bugsnag/node_modules + - ./packages/core-error-tracker-raygun/node_modules - ./packages/core-error-tracker-rollbar/node_modules - ./packages/core-error-tracker-sentry/node_modules - ./packages/core-event-emitter/node_modules @@ -124,6 +125,7 @@ jobs: - ./packages/core-database-postgres/node_modules - ./packages/core-elasticsearch/node_modules - ./packages/core-error-tracker-bugsnag/node_modules + - ./packages/core-error-tracker-raygun/node_modules - ./packages/core-error-tracker-rollbar/node_modules - ./packages/core-error-tracker-sentry/node_modules - ./packages/core-event-emitter/node_modules @@ -205,6 +207,7 @@ jobs: - ./packages/core-database-postgres/node_modules - ./packages/core-elasticsearch/node_modules - ./packages/core-error-tracker-bugsnag/node_modules + - ./packages/core-error-tracker-raygun/node_modules - ./packages/core-error-tracker-rollbar/node_modules - ./packages/core-error-tracker-sentry/node_modules - ./packages/core-event-emitter/node_modules @@ -311,6 +314,7 @@ jobs: - ./packages/core-database-postgres/node_modules - ./packages/core-elasticsearch/node_modules - ./packages/core-error-tracker-bugsnag/node_modules + - ./packages/core-error-tracker-raygun/node_modules - ./packages/core-error-tracker-rollbar/node_modules - ./packages/core-error-tracker-sentry/node_modules - ./packages/core-event-emitter/node_modules @@ -411,6 +415,7 @@ jobs: - ./packages/core-database-postgres/node_modules - ./packages/core-elasticsearch/node_modules - ./packages/core-error-tracker-bugsnag/node_modules + - ./packages/core-error-tracker-raygun/node_modules - ./packages/core-error-tracker-rollbar/node_modules - ./packages/core-error-tracker-sentry/node_modules - ./packages/core-event-emitter/node_modules @@ -517,6 +522,7 @@ jobs: - ./packages/core-database-postgres/node_modules - ./packages/core-elasticsearch/node_modules - ./packages/core-error-tracker-bugsnag/node_modules + - ./packages/core-error-tracker-raygun/node_modules - ./packages/core-error-tracker-rollbar/node_modules - ./packages/core-error-tracker-sentry/node_modules - ./packages/core-event-emitter/node_modules diff --git a/packages/core-error-tracker-raygun/.gitattributes b/packages/core-error-tracker-raygun/.gitattributes new file mode 100644 index 0000000000..60cc52db63 --- /dev/null +++ b/packages/core-error-tracker-raygun/.gitattributes @@ -0,0 +1,11 @@ +# Path-based git attributes +# https://www.kernel.org/pub/software/scm/git/docs/gitattributes.html + +# Ignore all test and documentation with "export-ignore". +/.editorconfig export-ignore +/.gitattributes export-ignore +/.gitignore export-ignore +/.travis.yml export-ignore +/__tests__ export-ignore +/docs export-ignore +/README.md export-ignore diff --git a/packages/core-error-tracker-raygun/README.md b/packages/core-error-tracker-raygun/README.md new file mode 100644 index 0000000000..db7907783a --- /dev/null +++ b/packages/core-error-tracker-raygun/README.md @@ -0,0 +1,21 @@ +# Ark Core - Error Tracker - Raygun + +

+ +

+ +## Documentation + +You can find installation instructions and detailed instructions on how to use this package at the [dedicated documentation site](https://docs.ark.io/guidebook/core/plugins/optional/core-error-tracker-raygun.html). + +## Security + +If you discover a security vulnerability within this package, please send an e-mail to security@ark.io. All security vulnerabilities will be promptly addressed. + +## Credits + +This project exists thanks to all the people who [contribute](../../../../contributors). + +## License + +[MIT](LICENSE) © [ArkEcosystem](https://ark.io) diff --git a/packages/core-error-tracker-raygun/package.json b/packages/core-error-tracker-raygun/package.json new file mode 100644 index 0000000000..3e36cff985 --- /dev/null +++ b/packages/core-error-tracker-raygun/package.json @@ -0,0 +1,30 @@ +{ + "name": "@arkecosystem/core-error-tracker-raygun", + "description": "Raygun error tracker integration for Ark Core.", + "version": "2.3.0-next.0", + "contributors": [ + "Brian Faust " + ], + "license": "MIT", + "main": "dist/index.js", + "files": [ + "dist" + ], + "scripts": { + "prepublishOnly": "yarn build", + "compile": "../../node_modules/typescript/bin/tsc", + "build": "yarn clean && yarn compile", + "build:watch": "yarn clean && yarn compile -w", + "clean": "del dist" + }, + "dependencies": { + "@arkecosystem/core-container": "^2.3.0-next.0", + "raygun": "^0.10.1" + }, + "publishConfig": { + "access": "public" + }, + "engines": { + "node": ">=10.x" + } +} diff --git a/packages/core-error-tracker-raygun/src/defaults.ts b/packages/core-error-tracker-raygun/src/defaults.ts new file mode 100644 index 0000000000..c9cb436f5e --- /dev/null +++ b/packages/core-error-tracker-raygun/src/defaults.ts @@ -0,0 +1,3 @@ +export const defaults = { + apiKey: process.env.CORE_ERROR_TRACKER_RAYGUN_API_KEY, +}; diff --git a/packages/core-error-tracker-raygun/src/index.ts b/packages/core-error-tracker-raygun/src/index.ts new file mode 100644 index 0000000000..d920d86f83 --- /dev/null +++ b/packages/core-error-tracker-raygun/src/index.ts @@ -0,0 +1,12 @@ +import { Container } from "@arkecosystem/core-interfaces"; +import raygun from "raygun"; +import { defaults } from "./defaults"; + +export const plugin: Container.PluginDescriptor = { + pkg: require("../package.json"), + defaults, + alias: "error-tracker", + async register(container: Container.IContainer, options) { + return new raygun.Client().init(options); + }, +}; diff --git a/packages/core-error-tracker-raygun/tsconfig.json b/packages/core-error-tracker-raygun/tsconfig.json new file mode 100644 index 0000000000..0b089c5fa8 --- /dev/null +++ b/packages/core-error-tracker-raygun/tsconfig.json @@ -0,0 +1,7 @@ +{ + "extends": "../../tsconfig.json", + "compilerOptions": { + "outDir": "dist" + }, + "include": ["src/**/**.ts"] +}