{"action":"created","issue":{"url":"https://api.github.com/repos/nodejs/diagnostics/issues/134","repository_url":"https://api.github.com/repos/nodejs/diagnostics","labels_url":"https://api.github.com/repos/nodejs/diagnostics/issues/134/labels{/name}","comments_url":"https://api.github.com/repos/nodejs/diagnostics/issues/134/comments","events_url":"https://api.github.com/repos/nodejs/diagnostics/issues/134/events","html_url":"https://github.com/nodejs/diagnostics/issues/134","id":282734020,"number":134,"title":"Get out of monkey patching","user":{"login":"mike-kaufman","id":8702326,"avatar_url":"https://avatars0.githubusercontent.com/u/8702326?v=4","gravatar_id":"","url":"https://api.github.com/users/mike-kaufman","html_url":"https://github.com/mike-kaufman","followers_url":"https://api.github.com/users/mike-kaufman/followers","following_url":"https://api.github.com/users/mike-kaufman/following{/other_user}","gists_url":"https://api.github.com/users/mike-kaufman/gists{/gist_id}","starred_url":"https://api.github.com/users/mike-kaufman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mike-kaufman/subscriptions","organizations_url":"https://api.github.com/users/mike-kaufman/orgs","repos_url":"https://api.github.com/users/mike-kaufman/repos","events_url":"https://api.github.com/users/mike-kaufman/events{/privacy}","received_events_url":"https://api.github.com/users/mike-kaufman/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":9,"created_at":"2017-12-17T23:41:06Z","updated_at":"2017-12-18T22:22:33Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"Forked from issue #95 so we can track seperately:\r\n\r\n**Problem:** Can we standardise the way tracing information is sent from an instrumented module (called module-x below) to an APM agent?\r\n\r\n**Suggestions:**\r\n\r\n- Maybe we can use the V8 trace events API\r\n    - Pros: No need for module-x to know about the APM agents\r\n    - Cons:\r\n        - Currently no way to bind the trace event to the current context\r\n        - Might be expensive to cross the barrier into C-land\r\n        - Might not be detailed enough\r\n        - Overhead of running in production?\r\n- Alternatively invent a new API in JavaScript land\r\n    - This could either be in Node core or a userland module\r\n    - If it’s a userland module, then module-x needs to detect if it’s present before it can send events to it. The APM agents need to do the same.\r\n        - What if there’s multiple versions of this module installed?\r\n    - Research if other languages have something similar"},"comment":{"url":"https://api.github.com/repos/nodejs/diagnostics/issues/comments/352576982","html_url":"https://github.com/nodejs/diagnostics/issues/134#issuecomment-352576982","issue_url":"https://api.github.com/repos/nodejs/diagnostics/issues/134","id":352576982,"user":{"login":"tedsuo","id":24074,"avatar_url":"https://avatars2.githubusercontent.com/u/24074?v=4","gravatar_id":"","url":"https://api.github.com/users/tedsuo","html_url":"https://github.com/tedsuo","followers_url":"https://api.github.com/users/tedsuo/followers","following_url":"https://api.github.com/users/tedsuo/following{/other_user}","gists_url":"https://api.github.com/users/tedsuo/gists{/gist_id}","starred_url":"https://api.github.com/users/tedsuo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tedsuo/subscriptions","organizations_url":"https://api.github.com/users/tedsuo/orgs","repos_url":"https://api.github.com/users/tedsuo/repos","events_url":"https://api.github.com/users/tedsuo/events{/privacy}","received_events_url":"https://api.github.com/users/tedsuo/received_events","type":"User","site_admin":false},"created_at":"2017-12-18T22:22:33Z","updated_at":"2017-12-18T22:22:33Z","author_association":"NONE","body":"Ted from OpenTracing here. Would you consider the OpenTracing C++11 API, or a C API? We're in the process of integrating into a number of technologies, now would be a good time to start working with you!\r\n\r\nhttps://github.com/opentracing/opentracing-cpp\r\nConsider dynamic loading as a way to continue to ship node without needing to recompile in order to include a tracer: https://github.com/opentracing/opentracing-cpp/issues/28"}}
{"actor":{"display_login":"tedsuo"}}