profile
viewpoint
If you are wondering where the data of this site comes from, please visit https://api.github.com/users/bizob2828/events. GitMemory does not store any data, but only uses NGINX to cache data for a period of time. The idea behind GitMemory is simply to give users a better reading experience.

bizob2828/gitplus 3

Generic tools and instructions for making it easier to work with git as a team.

bizob2828/bmore-open-data-api 1

API for messing with Bmore Open Data

bizob2828/alexa-meetup-preso 0

Talk about making alexa skills with Lambda

bizob2828/apollo-gateway-example 0

A working example of an apollo gateway w/ NR plugin + agent

bizob2828/apollo-hapi-nr-test 0

Apollo Hapi Server test app

bizob2828/asar 0

Simple extensive tar-like archive format with indexing

bizob2828/awesome-log 0

Logging for enterprise ready nodejs applications.

bizob2828/bamboo-github-status 0

A plugin for Atlassian Bamboo that reports build results to the GitHub status API

create barnchbizob2828/node-newrelic

branch : fastify-prototype

created branch time in a day

PullRequestReviewEvent
PullRequestReviewEvent
PullRequestReviewEvent
PullRequestReviewEvent

Pull request review commentnewrelic/node-native-metrics

remove deprecated code

 function findNodeGyp() {   if (process.env.npm_config_node_gyp) {     try {       gypPath = process.env.npm_config_node_gyp-      if (fs.existsSync(gypPath)) {+      if (fs.accessSync(gypPath)) {

true, that's fair

garbados

comment created time in 2 days

PullRequestReviewEvent

Pull request review commentnewrelic/node-newrelic

Prototype of undici diagnostic channel events to get feature parity

+/*+ * Copyright 2020 New Relic Corporation. All rights reserved.+ * SPDX-License-Identifier: Apache-2.0+ */++'use strict'++const recordExternal = require('../metrics/recorders/http_external')+const hashes = require('../util/hashes')+const logger = require('../logger').child({ component: 'undici' })+const NAMES = require('../metrics/names')+const SHIM_SYMBOLS = require('../shim/constants').SYMBOLS++const NEWRELIC_ID_HEADER = 'x-newrelic-id'+const NEWRELIC_TRANSACTION_HEADER = 'x-newrelic-transaction'+const NEWRELIC_SYNTHETICS_HEADER = 'x-newrelic-synthetics'+const diagnosticsChannel = require('diagnostics_channel')+const SEGMENT = Symbol('__NR_segment')+const PARENT_SEGMENT = Symbol('__NR_parent_segment')++/**+ * Subscribes to undici diagnostic channel events+ *  `undici:request:create` - happens right before request is made+ *  `undici:request:headers` - happens when response headers are returned from server+ *  `undici:request:trailer` - happens right before response ends+ *  `undici:request:error` - happens when request errors+ *+ * @param {Agent} agent+ */+module.exports = function addUndiciChannels(agent, undici, modName, shim) {+  diagnosticsChannel.channel('undici:request:create').subscribe(({ request }) => {+    const url = new URL(`${request.origin}${request.path}`)++    const name = NAMES.EXTERNAL.PREFIX + url.host + url.pathname+    const parent = agent.tracer.getSegment()+    if (parent && parent.opaque) {+      logger.trace(+        'Not capturing data for outbound request (%s) because parent segment opaque (%s)',+        name,+        parent.name+      )++      return+    }++    const segment = agent.tracer.createSegment(name, recordExternal(url.host, 'undici'), parent)+    segment.start()+    shim.setActiveSegment(segment)+    const transaction = segment.transaction+    const outboundHeaders = Object.create(null)+    if (agent.config.encoding_key && transaction.syntheticsHeader) {+      outboundHeaders[NEWRELIC_SYNTHETICS_HEADER] = transaction.syntheticsHeader+    }++    // TODO: abstract header logic shared with TransactionShim#insertCATRequestHeaders+    if (agent.config.distributed_tracing.enabled) {+      if (request.headers && request.headers[SHIM_SYMBOLS.DISABLE_DT]) {+        logger.trace('Distributed tracing disabled by instrumentation.')+      } else {+        transaction.insertDistributedTraceHeaders(outboundHeaders)+      }+    } else if (agent.config.cross_application_tracer.enabled) {+      if (agent.config.encoding_key) {+        _addCATHeaders(agent, transaction, outboundHeaders)+      } else {+        logger.trace('No encoding key found, not adding CAT headers')+      }+    } else {+      logger.trace('CAT disabled, not adding headers!')+    }++    // eslint-disable-next-line guard-for-in+    for (const key in outboundHeaders) {+      request.addHeader(key, outboundHeaders[key])+    }++    // TODO: Need https://github.com/nodejs/undici/issues/863+    segment.addAttribute('url', `${request.origin}${url.pathname}`)++    url.searchParams.forEach((value, key) => {+      segment.addSpanAttribute(`request.parameters.${key}`, value)+    })+    segment.addAttribute('procedure', request.method || 'GET')+    request[SEGMENT] = segment+    request[PARENT_SEGMENT] = parent+  })++  diagnosticsChannel.channel('undici:request:headers').subscribe(({ request, response }) => {+    const activeSegment = request[SEGMENT]+    if (activeSegment) {+      activeSegment.addSpanAttribute('http.statusCode', response.statusCode)+      activeSegment.addSpanAttribute('http.statusText', response.statusText)+      // If CAT is enabled, grab those headers!+      if (+        agent.config.cross_application_tracer.enabled &&+        !agent.config.distributed_tracing.enabled+      ) {+        pullCatHeaders(+          agent.config,+          activeSegment,+          request.origin,+          response.headers['x-newrelic-app-data']+        )+      }+    }+  })++  diagnosticsChannel.channel('undici:request:trailers').subscribe(({ request }) => {+    const activeSegment = request[SEGMENT]+    const parentSegment = request[PARENT_SEGMENT]+    if (activeSegment) {+      activeSegment.end()+      if (parentSegment) {+        shim.setActiveSegment(parentSegment)+      }+    }+  })++  diagnosticsChannel.channel('undici:request:error').subscribe(({ request, error }) => {+    const activeSegment = request[SEGMENT]+    const parentSegment = request[PARENT_SEGMENT]+    if (activeSegment) {+      activeSegment.end()+      // TODO: this is not IncomingMessage so has no listener count+      handleError(+        activeSegment,+        {

can we get the actual http req(IncomingMessage)

bizob2828

comment created time in 2 days

PullRequestReviewEvent

fork bizob2828/run-on-arch-action

A Github Action that executes jobs/commands on non-x86 cpu architectures (ARMv6, ARMv7, aarch64, s390x, ppc64le)

fork in 2 days

issue closednewrelic/node-newrelic

Avoid using destroy hook on async-hooks

There is a new development on V8/Nodejs sides (Node16 and will be backported to Node14) that should optimize async-hooks, but from another side, if destroy hook is set, it will cause performance degradation

I'm not sure it is possible to avoid the use of destroy here but better keep it in mind

https://github.com/nodejs/node/pull/36394 https://github.com/nodejs/node/pull/38577

Before:

❯ ./node-base benchmark/async_hooks/promises.js
async_hooks/promises.js asyncHooks="enabled" n=1000000: 255,804.136249129
async_hooks/promises.js asyncHooks="enabledWithDestroy" n=1000000: 161,508.90344245007
async_hooks/promises.js asyncHooks="enabledWithInitOnly" n=1000000: 304,650.28581800853
async_hooks/promises.js asyncHooks="disabled" n=1000000: 1,558,729.7299161875

After:

❯ ./node benchmark/async_hooks/promises.js
async_hooks/promises.js asyncHooks="enabled" n=1000000: 1,059,976.9918850197
async_hooks/promises.js asyncHooks="enabledWithDestroy" n=1000000: 155,428.08296446863
async_hooks/promises.js asyncHooks="enabledWithInitOnly" n=1000000: 972,299.3745827201
async_hooks/promises.js asyncHooks="disabled" n=1000000: 1,548,472.043353055

closed time in 3 days

artur-ma

issue commentnewrelic/node-newrelic

Avoid using destroy hook on async-hooks

This is fixed if you add the feature flag

{
  feature_flag: {
    new_promise_tracking : true,
    unresolved_promise_cleanup: false
  }
}

We will be solving this more holistically in #796

artur-ma

comment created time in 3 days

issue commentnewrelic/node-newrelic

Web transactions are being emitted with double /.

This is similar to #757

Kristof-Mattei

comment created time in 3 days

issue commentnewrelic/node-newrelic

Instrument undici

Added a prototype PR that shows support for this library https://github.com/newrelic/node-newrelic/pull/901. The notes in PR state we need an issue to be fixed in Undici

artur-ma

comment created time in 3 days

issue commentnewrelic/node-newrelic

Automatically add new issues to the Engineering board.

Looks like we could just wire this action up in every repo https://github.com/marketplace/actions/assign-to-one-project

michaelgoin

comment created time in 3 days

push eventnewrelic/node-native-metrics

Bob Evans

commit sha c50381023197a423a2b187e3febe7273b6938ce4

add debug code

view details

push time in 3 days

push eventnewrelic/node-native-metrics

Bob Evans

commit sha af10e96d4183abf118a59ee484954792bfbd1c03

added build-essential, python and properly source nvm during install and run phases

view details

push time in 3 days

push eventnewrelic/node-native-metrics

Bob Evans

commit sha d00c0a3af7ce3a812f7cca51a57a9211a51a5487

build-essential instead of make + gcc

view details

push time in 3 days

push eventnewrelic/node-native-metrics

Bob Evans

commit sha 66b4659f4d6bb3865861afc37936d6a11e78ad0b

adding more deps

view details

push time in 3 days

push eventnewrelic/node-native-metrics

Bob Evans

commit sha 2f8fd8da36f9402f1a10ec48da35cde8ce3b8368

sourcing nvm in both install and run

view details

push time in 3 days

push eventnewrelic/node-native-metrics

Bob Evans

commit sha 741396dfa6d983fac30de432d878b67f43ddec4b

adding pythong

view details

push time in 3 days

push eventnewrelic/node-native-metrics

Bob Evans

commit sha d896e91c4ae32b18d234bac37b6bcc704e8908ae

nvm debug mend

view details

push time in 3 days

push eventnewrelic/node-native-metrics

Bob Evans

commit sha 5bd52a30906b959f5d9b5877a8fc5c0854ab2f44

mend nvm debug

view details

push time in 3 days

push eventnewrelic/node-native-metrics

Bob Evans

commit sha cd44f85614d1785168c9399236ebf37eefcd6f30

WIP: debug nvm

view details

push time in 3 days

push eventbizob2828/node-native-metrics

Bob Evans

commit sha 07def9758afc1503faf69b667e602dea54186f43

delay checking node-gyp version during build of module

view details

Bob Evans

commit sha 64c7882e5c6b606e06840d9cee29758398455383

Merge pull request #156 from bizob2828/delay-gyp-version-check delay checking node-gyp version during build of module

view details

Bob Evans

commit sha 08ab1f5fe764b59cdb00e39aa4faa8d73d93228c

Release v7.0.2

view details

Bob Evans

commit sha 070ea797fffb4aa7c578a078d3872763a5be884d

Merge pull request #158 from newrelic/release/v7.0.2 Release v7.0.2

view details

Bob Evans

commit sha 4ed21daff8d7efad693317a1310793953dbcb8ac

7.0.2

view details

Bob Evans

commit sha 5a665f21a24ab4e1face59a849bee4a6e6ce260c

skips the download test for now until we can fix holistically

view details

Bob Evans

commit sha c5940f99a74029dca6548ce4f8c7d7be6ffb022b

Merge pull request #159 from newrelic/remove-download skips the download test for now until we can fix holistically

view details

push time in 3 days

created tagbizob2828/node-native-metrics

tagv7.0.2

Optional native module for collecting low-level Node & V8 metrics

created time in 3 days

push eventbizob2828/node-newrelic

Bob Evans

commit sha 49049b7f05b1bdc40513a84c7a551624aac3dfec

setting parent as active after ending undici request segment

view details

push time in 3 days

push eventbizob2828/NodeTestBenches

Griffin Yourick

commit sha ee92c172260dd823a44bae0e49a81b99ce9184ca

Refactor sinkData to account for a variety of safe sink calls

view details

Griffin Yourick

commit sha 2c3492b299daf79de92888908596ab57d6b5cf0e

Fix to work better with existing frontend

view details

Griffin Yourick

commit sha f88a1eda9588910a5d101d46a874b9357b0302cf

Refactor apps to use new sinks

view details

Griffin Yourick

commit sha d9fe94beeb1a5258053dff21d99cd83008ba8d0b

improve typings

view details

Griffin Yourick

commit sha 585ef11acc09a2f4eb0967f19a675e046a3f72f1

Tweak typings once again

view details

Griffin Yourick

commit sha 53522cfc7910e96e01fcfe1c82400820730225aa

Use consistent language across files

view details

Griffin Yourick

commit sha 5525d7848cd8b4a9d380c89d383b25e661a06412

improve documentation and type exporting

view details

Griffin Yourick

commit sha 4c83d27914a81d14baeedb13da6551fc7851c950

Fix content types

view details

Griffin Yourick

commit sha 54fc3cb41b0590d4dde21b1cdaff09c4f037f393

NODE-1503 somewhat inelegant solution for an arbitrary number of routes per sink

view details

Griffin Yourick

commit sha f999acc45ae5219a062b6fc5588c87dbb4b6112d

Merge pull request #135 from Contrast-Security-OSS/NODE-1385/multiple-safe-routes NODE-1385 Add support for multiple safe routes

view details

Griffin Yourick

commit sha f9ab3bdf473701851b381a1cd836fc6e7a2e62b8

v3.20.0

view details

Griffin Yourick

commit sha c544dbd1f86d03d88b1b6fc98217367170c662d7

update package-locks

view details

Griffin Yourick

commit sha 4709e6bc6c886390bf520b7c2e1830564268aec4

use npm 7 in ci

view details

jcolekaplan

commit sha b4ea8c7ef81d05810ee728ac2dd8b8f0d96a6ff7

Account for introduction of sinkObj replacing sink

view details

jcolekaplan

commit sha 2e7538454f7a1597589a9730ed6797a9ede0a2ad

Merge pull request #163 from Contrast-Security-OSS/NODE-1587-fix-screener-regression NODE 1587: Fix screener regression

view details

Yulia Tenincheva

commit sha 5628995781d86ed5005ce1904fdc00d7704b5fe7

Added an option to use the standalone rewriter with any app

view details

Matthew Henry

commit sha 45b22daa1efc6c1b1850403d3d01bc7b4555a5f6

Merge pull request #164 from Contrast-Security-OSS/NODE-1444-enable-standalone-rewriter Added an option to use the standalone rewriter with any app

view details

Matthew Henry

commit sha 342ffc1b267417ce0ec83e64b48481cd3f426029

NODE-1618: limit forking

view details

Matthew Henry

commit sha 9bc5168b9a4fd507105c73eb8da348f3773070cd

NODE-1618: Update build script to create Node v16 images so we can run screener against them.

view details

Matthew Henry

commit sha 06fb3d49f80224293b0e180d62abc02e3036911c

Merge pull request #165 from Contrast-Security-OSS/NODE-1618-limit-forks NODE-1618: limit forking

view details

push time in 3 days

push eventbizob2828/NodeTestBenches

Griffin Yourick

commit sha ee92c172260dd823a44bae0e49a81b99ce9184ca

Refactor sinkData to account for a variety of safe sink calls

view details

Griffin Yourick

commit sha 2c3492b299daf79de92888908596ab57d6b5cf0e

Fix to work better with existing frontend

view details

Griffin Yourick

commit sha f88a1eda9588910a5d101d46a874b9357b0302cf

Refactor apps to use new sinks

view details

Griffin Yourick

commit sha d9fe94beeb1a5258053dff21d99cd83008ba8d0b

improve typings

view details

Griffin Yourick

commit sha 585ef11acc09a2f4eb0967f19a675e046a3f72f1

Tweak typings once again

view details

Griffin Yourick

commit sha 53522cfc7910e96e01fcfe1c82400820730225aa

Use consistent language across files

view details

Griffin Yourick

commit sha 5525d7848cd8b4a9d380c89d383b25e661a06412

improve documentation and type exporting

view details

Griffin Yourick

commit sha 4c83d27914a81d14baeedb13da6551fc7851c950

Fix content types

view details

Griffin Yourick

commit sha 54fc3cb41b0590d4dde21b1cdaff09c4f037f393

NODE-1503 somewhat inelegant solution for an arbitrary number of routes per sink

view details

Griffin Yourick

commit sha f999acc45ae5219a062b6fc5588c87dbb4b6112d

Merge pull request #135 from Contrast-Security-OSS/NODE-1385/multiple-safe-routes NODE-1385 Add support for multiple safe routes

view details

Griffin Yourick

commit sha f9ab3bdf473701851b381a1cd836fc6e7a2e62b8

v3.20.0

view details

Griffin Yourick

commit sha c544dbd1f86d03d88b1b6fc98217367170c662d7

update package-locks

view details

Griffin Yourick

commit sha 4709e6bc6c886390bf520b7c2e1830564268aec4

use npm 7 in ci

view details

jcolekaplan

commit sha b4ea8c7ef81d05810ee728ac2dd8b8f0d96a6ff7

Account for introduction of sinkObj replacing sink

view details

jcolekaplan

commit sha 2e7538454f7a1597589a9730ed6797a9ede0a2ad

Merge pull request #163 from Contrast-Security-OSS/NODE-1587-fix-screener-regression NODE 1587: Fix screener regression

view details

Yulia Tenincheva

commit sha 5628995781d86ed5005ce1904fdc00d7704b5fe7

Added an option to use the standalone rewriter with any app

view details

Matthew Henry

commit sha 45b22daa1efc6c1b1850403d3d01bc7b4555a5f6

Merge pull request #164 from Contrast-Security-OSS/NODE-1444-enable-standalone-rewriter Added an option to use the standalone rewriter with any app

view details

Matthew Henry

commit sha 342ffc1b267417ce0ec83e64b48481cd3f426029

NODE-1618: limit forking

view details

Matthew Henry

commit sha 9bc5168b9a4fd507105c73eb8da348f3773070cd

NODE-1618: Update build script to create Node v16 images so we can run screener against them.

view details

Matthew Henry

commit sha 06fb3d49f80224293b0e180d62abc02e3036911c

Merge pull request #165 from Contrast-Security-OSS/NODE-1618-limit-forks NODE-1618: limit forking

view details

push time in 3 days

push eventbizob2828/NodeTestBenches

Bob Evans

commit sha 2efb8ff31607048750b2eda0d57c95d5333a61d0

added koa config

view details

push time in 3 days