Skip to content
This repository was archived by the owner on Dec 14, 2023. It is now read-only.

Commit

Permalink
add seneca new-relic (#179)
Browse files Browse the repository at this point in the history
* add seneca new-relic
  • Loading branch information
butlerx authored and Wardormeur committed Jan 19, 2018
1 parent 3393bc5 commit 01bff6f
Show file tree
Hide file tree
Showing 4 changed files with 95 additions and 61 deletions.
15 changes: 13 additions & 2 deletions newrelic.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,17 @@
exports.config = {
app_name: ['cp-events-service'],
agent_enabled: false, // set via NEW_RELIC_ENABLED for production
license_key: '', // set via NEW_RELIC_LICENSE_KEY
filepath: '/tmp/newrelic_agent_events.log'
license_key: '', // set via NEW_RELIC_LICENSE_KEY
filepath: '/tmp/newrelic_agent_events.log',
transaction_tracer: {
record_sql: 'obfuscated'
},
logging: {
/**
* Level at which to log. 'trace' is most useful to New Relic when diagnosing
* issues with the agent, 'info' and higher will impose the least overhead on
* production applications.
*/
level: 'info'
}
};
9 changes: 5 additions & 4 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -34,27 +34,28 @@
},
"dependencies": {
"async": "0.9.2",
"camelcase": "^4.1.0",
"cp-i18n-lib": "git://github.com/CoderDojo/cp-i18n-lib.git",
"cp-logs-lib": "git://github.com/CoderDojo/cp-logs-lib#1.1.0",
"cp-permissions-plugin": "git://github.com/CoderDojo/cp-permissions-plugin#1.0.2",
"cp-translations": "^1.0.22",
"decamelize": "^2.0.0",
"ejs": "2.5.6",
"js-yaml": "3.2.7",
"json2csv": "2.11.0",
"le_node": "1.1.0",
"lodash": "3.7.0",
"moment": "2.10.3",
"newrelic": "1.21.1",
"camelcase": "^4.1.0",
"decamelize": "^1.2.0",
"newrelic": "^2.6.0",
"pg": "5.1.0",
"postgrator": "2.8.1",
"sanitize-html": "1.14.1",
"seneca": "1.4.0",
"seneca-kue": "git://github.com/wardormeur/seneca-kue.git",
"seneca-newrelic": "wardormeur/seneca-newrelic",
"seneca-postgresql-store": "2.3",
"seneca-store-query": "0.0.5",
"seneca-queue": "^0.3.0",
"seneca-store-query": "0.0.5",
"shortid": "2.2.2",
"utils": "^0.3.1",
"yargs": "3.7.2"
Expand Down
19 changes: 16 additions & 3 deletions service.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@
process.setMaxListeners(0);
require('events').EventEmitter.prototype._maxListeners = 100;

if (process.env.NEW_RELIC_ENABLED === 'true') require('newrelic');
const senecaNR = require('seneca-newrelic');
const newrelic = process.env.NEW_RELIC_ENABLED === 'true' ? require('newrelic') : undefined;

var config = require('./config/config.js')();
var seneca = require('seneca')(config);
Expand Down Expand Up @@ -40,14 +41,26 @@ seneca.options.sanitizeTextArea = {
img: ['*']
})
};
seneca.decorate('customValidatorLogFormatter', require('./lib/custom-validator-log-formatter'));
seneca.use(store, config['postgresql-store']);
seneca.use(storeQuery);
seneca.decorate('customValidatorLogFormatter', require('./lib/custom-validator-log-formatter'));
seneca.use(require('./lib/cd-events'), { logger: log.logger });
seneca.use(require('cp-permissions-plugin'), {
config: __dirname + '/config/permissions'
config: `${__dirname}/config/permissions`
});

if (!_.isUndefined(newrelic)) {
seneca.use(senecaNR, {
newrelic,
roles: ['cd-events'],
filter (p) {
p.user = p.user ? p.user.id : undefined;
p.login = p.login ? p.login.id : undefined;
return p;
}
});
}

seneca.use(require('seneca-queue'));
seneca.use(require('seneca-kue'));
seneca.use(require('./lib/queues'), { config: config.kue });
Expand Down
113 changes: 61 additions & 52 deletions yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,12 @@
# yarn lockfile v1


"@newrelic/native-metrics@^2.1.0":
version "2.1.2"
resolved "https://registry.yarnpkg.com/@newrelic/native-metrics/-/native-metrics-2.1.2.tgz#9a595dc602654b717188a294507087a51e79fba3"
dependencies:
nan "^2.4.0"

abbrev@1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8"
Expand Down Expand Up @@ -232,8 +238,8 @@ assert-plus@^0.2.0:
resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234"

assertion-error@^1.0.1:
version "1.0.2"
resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.0.2.tgz#13ca515d86206da0bac66e834dd397d87581094c"
version "1.1.0"
resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.1.0.tgz#e60b6b0e8f301bd97e5375215bda406c85118c0b"

ast-traverse@~0.1.1:
version "0.1.1"
Expand Down Expand Up @@ -267,7 +273,7 @@ [email protected], async@^1.4.0, async@^1.5.0:
version "1.5.2"
resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a"

async@^2.0.0-rc.5, async@^2.0.1:
async@^2.0.0-rc.5, async@^2.0.1, async@^2.1.4:
version "2.6.0"
resolved "https://registry.yarnpkg.com/async/-/async-2.6.0.tgz#61a29abb6fcc026fea77e56d1c6ec53a795951f4"
dependencies:
Expand Down Expand Up @@ -787,8 +793,8 @@ [email protected]:
graceful-readlink ">= 1.0.0"

commander@^2.5.0, commander@^2.8.1, commander@^2.9.0:
version "2.12.2"
resolved "https://registry.yarnpkg.com/commander/-/commander-2.12.2.tgz#0f5946c427ed9ec0d91a46bb9def53e54650e555"
version "2.13.0"
resolved "https://registry.yarnpkg.com/commander/-/commander-2.13.0.tgz#6964bca67685df7c1f1430c584f07d7597885b9c"

commoner@~0.10.3:
version "0.10.8"
Expand Down Expand Up @@ -915,8 +921,8 @@ [email protected], core-util-is@~1.0.0:
lodash "^4.13.1"

cp-translations@^1.0.22:
version "1.0.82"
resolved "https://registry.yarnpkg.com/cp-translations/-/cp-translations-1.0.82.tgz#e4fd14f16c1ce9e8c5cdb116ddbae6397f0db538"
version "1.0.83"
resolved "https://registry.yarnpkg.com/cp-translations/-/cp-translations-1.0.83.tgz#fcedb23cf0482c2ce70969543db2e9d759e2c6e5"

cross-spawn-async@^2.0.0:
version "2.2.5"
Expand Down Expand Up @@ -988,10 +994,16 @@ debug@~2.2.0:
dependencies:
ms "0.7.1"

decamelize@^1.0.0, decamelize@^1.1.1, decamelize@^1.2.0:
decamelize@^1.0.0, decamelize@^1.1.1:
version "1.2.0"
resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"

decamelize@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-2.0.0.tgz#656d7bbc8094c4c788ea53c5840908c9c7d063c7"
dependencies:
xregexp "4.0.0"

deep-eql@^3.0.0:
version "3.0.1"
resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-3.0.1.tgz#dfc9404400ad1c8fe023e7da1df1c147c4b444df"
Expand Down Expand Up @@ -1063,10 +1075,14 @@ delegates@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a"

[email protected], depd@~1.1.0, depd@~1.1.1:
[email protected]:
version "1.1.1"
resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.1.tgz#5783b4e1c459f06fa5ca27f991f3d06e7a310359"

depd@~1.1.0, depd@~1.1.1:
version "1.1.2"
resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9"

destroy@~1.0.4:
version "1.0.4"
resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80"
Expand Down Expand Up @@ -1124,8 +1140,8 @@ doctrine@^0.7.0, doctrine@^0.7.1:
isarray "0.0.1"

doctrine@^2.0.0:
version "2.0.2"
resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.0.2.tgz#68f96ce8efc56cc42651f1faadb4f175273b0075"
version "2.1.0"
resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d"
dependencies:
esutils "^2.0.2"

Expand Down Expand Up @@ -1176,8 +1192,8 @@ duplexer@~0.1.1:
resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.1.tgz#ace6ff808c1ce66b57d1ebf97977acb02334cfc1"

duplexify@^3.2.0:
version "3.5.1"
resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.5.1.tgz#4e1516be68838bc90a49994f0b39a6e5960befcd"
version "3.5.3"
resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.5.3.tgz#8b5818800df92fd0125b27ab896491912858243e"
dependencies:
end-of-stream "^1.0.0"
inherits "^2.0.1"
Expand Down Expand Up @@ -1219,8 +1235,8 @@ encoding@^0.1.11:
iconv-lite "~0.4.13"

end-of-stream@^1.0.0:
version "1.4.0"
resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.0.tgz#7a90d833efda6cfa6eac0f4949dbb0fad3a63206"
version "1.4.1"
resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.1.tgz#ed29634d19baba463b6ce6b80a37213eab71ec43"
dependencies:
once "^1.4.0"

Expand All @@ -1241,13 +1257,13 @@ error-ex@^1.2.0:
is-arrayish "^0.2.1"

es5-ext@^0.10.14, es5-ext@^0.10.35, es5-ext@^0.10.9, es5-ext@~0.10.14:
version "0.10.37"
resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.37.tgz#0ee741d148b80069ba27d020393756af257defc3"
version "0.10.38"
resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.38.tgz#fa7d40d65bbc9bb8a67e1d3f9cc656a00530eed3"
dependencies:
es6-iterator "~2.0.1"
es6-iterator "~2.0.3"
es6-symbol "~3.1.1"

es6-iterator@^2.0.1, es6-iterator@~2.0.1:
es6-iterator@^2.0.1, es6-iterator@~2.0.1, es6-iterator@~2.0.3:
version "2.0.3"
resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7"
dependencies:
Expand Down Expand Up @@ -3298,7 +3314,7 @@ [email protected]:
safe-buffer "5.1.1"
sqlstring "2.3.0"

nan@^2.0.8, nan@^2.3.0:
nan@^2.0.8, nan@^2.3.0, nan@^2.4.0:
version "2.8.0"
resolved "https://registry.yarnpkg.com/nan/-/nan-2.8.0.tgz#ed715f3fe9de02b57a5e6252d90a96675e1f085a"

Expand Down Expand Up @@ -3344,16 +3360,18 @@ [email protected]:
version "0.0.3"
resolved "https://registry.yarnpkg.com/newline/-/newline-0.0.3.tgz#0f6a74493223dba04fe7dbfb6cdc804bf7e46dd0"

newrelic@1.21.1:
version "1.21.1"
resolved "https://registry.yarnpkg.com/newrelic/-/newrelic-1.21.1.tgz#cbf5c02031bd01c89bb38213a7b0ce30d6123dbd"
newrelic@^2.6.0:
version "2.6.0"
resolved "https://registry.yarnpkg.com/newrelic/-/newrelic-2.6.0.tgz#8672c25c3bda68582ba8dd00a25e3198ef98e42e"
dependencies:
async "^2.1.4"
concat-stream "^1.5.0"
https-proxy-agent "^0.3.5"
json-stringify-safe "^5.0.0"
readable-stream "^1.1.13"
semver "^4.2.0"
yakaa "^1.0.1"
readable-stream "^2.1.4"
semver "^5.3.0"
optionalDependencies:
"@newrelic/native-metrics" "^2.1.0"

nib@~1.1.2:
version "1.1.2"
Expand Down Expand Up @@ -4051,8 +4069,8 @@ [email protected]:
unpipe "1.0.0"

rc@^1.0.1, rc@^1.1.7:
version "1.2.2"
resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.2.tgz#d8ce9cb57e8d64d9c7badd9876c7c34cbe3c7077"
version "1.2.4"
resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.4.tgz#a0f606caae2a3b862bbd0ef85482c0125b315fa3"
dependencies:
deep-extend "~0.4.0"
ini "~1.3.0"
Expand Down Expand Up @@ -4093,15 +4111,6 @@ [email protected], readable-stream@^2.0.0, readable-stream@^2.0.2, readable-
string_decoder "~1.0.3"
util-deprecate "~1.0.1"

readable-stream@^1.1.13:
version "1.1.14"
resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9"
dependencies:
core-util-is "~1.0.0"
inherits "~2.0.1"
isarray "0.0.1"
string_decoder "~0.10.x"

readdirp@^2.0.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.1.0.tgz#4ed0ad060df3073300c48440373f72d1cc642d78"
Expand Down Expand Up @@ -4481,8 +4490,8 @@ semver-diff@^2.0.0:
semver "^5.0.3"

"semver@2 || 3 || 4 || 5", semver@^5.0.3, semver@^5.1.0, semver@^5.3.0:
version "5.4.1"
resolved "https://registry.yarnpkg.com/semver/-/semver-5.4.1.tgz#e059c09d8571f0540823733433505d3a2f00b18e"
version "5.5.0"
resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab"

[email protected], semver@~2.2.1:
version "2.2.1"
Expand All @@ -4504,7 +4513,7 @@ [email protected]:
version "5.1.1"
resolved "https://registry.yarnpkg.com/semver/-/semver-5.1.1.tgz#a3292a373e6f3e0798da0b20641b9a9c5bc47e19"

semver@^4.1.0, semver@^4.2.0, semver@^4.3.1:
semver@^4.1.0, semver@^4.3.1:
version "4.3.6"
resolved "https://registry.yarnpkg.com/semver/-/semver-4.3.6.tgz#300bc6e0e86374f7ba61068b5b1ecd57fc6532da"

Expand Down Expand Up @@ -4580,6 +4589,10 @@ [email protected]:
dependencies:
lodash "3.10.1"

seneca-newrelic@wardormeur/seneca-newrelic:
version "0.0.1"
resolved "https://codeload.github.com/wardormeur/seneca-newrelic/tar.gz/7d58f553b7301ab114c391a77f6eea132e6d4af9"

[email protected]:
version "2.3.0"
resolved "https://registry.yarnpkg.com/seneca-postgresql-store/-/seneca-postgresql-store-2.3.0.tgz#9cbe6746198dd68490ed37f1ba28318fb7b1e7d9"
Expand Down Expand Up @@ -4961,10 +4974,6 @@ string.prototype.endswith@^0.2.0:
version "0.2.0"
resolved "https://registry.yarnpkg.com/string.prototype.endswith/-/string.prototype.endswith-0.2.0.tgz#a19c20dee51a98777e9a47e10f09be393b9bba75"

string_decoder@~0.10.x:
version "0.10.31"
resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94"

string_decoder@~1.0.3:
version "1.0.3"
resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.0.3.tgz#0fc67d7c141825de94282dd536bec6b9bce860ab"
Expand Down Expand Up @@ -5201,8 +5210,8 @@ type-check@~0.3.1, type-check@~0.3.2:
prelude-ls "~1.1.2"

type-detect@^4.0.0:
version "4.0.5"
resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.5.tgz#d70e5bc81db6de2a381bcaca0c6e0cbdc7635de2"
version "4.0.6"
resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.6.tgz#88cbce3d13bc675a63f840b3225c180f870786d7"

type-is@~1.6.15:
version "1.6.15"
Expand Down Expand Up @@ -5331,8 +5340,8 @@ uuid@^2.0.1:
resolved "https://registry.yarnpkg.com/uuid/-/uuid-2.0.3.tgz#67e2e863797215530dff318e5bf9dcebfd47b21a"

uuid@^3.0.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.1.0.tgz#3dd3d3e790abc24d7b0d3a034ffababe28ebbc04"
version "3.2.1"
resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.2.1.tgz#12c528bb9d58d0b9265d9a2f6f0fe8be17ff1f14"

validate-npm-package-license@^3.0.1:
version "3.0.1"
Expand Down Expand Up @@ -5456,6 +5465,10 @@ xml-escape@~1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/xml-escape/-/xml-escape-1.0.0.tgz#00963d697b2adf0c185c4e04e73174ba9b288eb2"

[email protected]:
version "4.0.0"
resolved "https://registry.yarnpkg.com/xregexp/-/xregexp-4.0.0.tgz#e698189de49dd2a18cc5687b05e17c8e43943020"

xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.1:
version "4.0.1"
resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af"
Expand All @@ -5464,10 +5477,6 @@ y18n@^3.2.0, y18n@^3.2.1:
version "3.2.1"
resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41"

yakaa@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/yakaa/-/yakaa-1.0.1.tgz#3ecaae72f3d089da58089403126204cec772e60a"

yallist@^2.0.0, yallist@^2.1.2:
version "2.1.2"
resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52"
Expand Down

0 comments on commit 01bff6f

Please sign in to comment.