@google-cloud/logging-min
Advanced tools
Comparing version 9.8.1 to 9.8.2
@@ -1,2 +0,2 @@ | ||
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.parseTraceParentHeader=exports.parseXCloudTraceHeader=exports.getContextFromTraceParent=exports.getContextFromXCloudTrace=exports.getOrInjectContext=exports.makeHeaderWrapper=exports.W3C_TRACE_PARENT_HEADER=exports.X_CLOUD_TRACE_HEADER=void 0;const uuid=require("uuid");const crypto=require("crypto");exports.X_CLOUD_TRACE_HEADER="x-cloud-trace-context";const SPAN_ID_RANDOM_BYTES=8;const spanIdBuffer=Buffer.alloc(SPAN_ID_RANDOM_BYTES);const randomFillSync=crypto.randomFillSync;const randomBytes=crypto.randomBytes;const spanRandomBuffer=randomFillSync?()=>randomFillSync(spanIdBuffer):()=>randomBytes(SPAN_ID_RANDOM_BYTES);exports.W3C_TRACE_PARENT_HEADER="traceparent";function makeHeaderWrapper(req){if(!req.headers)return null;const wrapper={setHeader(name,value){req.headers[name]=value},getHeader(name){return req.headers[name]}};return wrapper}exports.makeHeaderWrapper=makeHeaderWrapper;function getOrInjectContext(req,projectId,inject){const defaultContext=toCloudTraceContext({},projectId);const wrapper=makeHeaderWrapper(req);if(wrapper){const traceContext=getContextFromTraceParent(wrapper,projectId);if(traceContext)return traceContext;const cloudContext=getContextFromXCloudTrace(wrapper,projectId);if(cloudContext)return cloudContext;if(inject){wrapper.setHeader(exports.X_CLOUD_TRACE_HEADER,makeCloudTraceHeader());return getContextFromXCloudTrace(wrapper,projectId)}}return defaultContext}exports.getOrInjectContext=getOrInjectContext;function toCloudTraceContext(anyContext,projectId){const context={trace:""};if(anyContext===null||anyContext===void 0?void 0:anyContext.trace){context.trace=`projects/${projectId}/traces/${anyContext.trace}`}if(anyContext===null||anyContext===void 0?void 0:anyContext.spanId){context.spanId=anyContext.spanId}if("traceSampled"in anyContext){context.traceSampled=anyContext.traceSampled}return context}function makeCloudTraceHeader(){const trace=uuid.v4().replace(/-/g,"");const spanId=spanRandomBuffer().toString("hex");return`${trace}/${spanId}`}function getContextFromXCloudTrace(headerWrapper,projectId){const context=parseXCloudTraceHeader(headerWrapper);if(!context)return null;return toCloudTraceContext(context,projectId)}exports.getContextFromXCloudTrace=getContextFromXCloudTrace;function getContextFromTraceParent(headerWrapper,projectId){const context=parseTraceParentHeader(headerWrapper);if(!context)return null;return toCloudTraceContext(context,projectId)}exports.getContextFromTraceParent=getContextFromTraceParent;function parseXCloudTraceHeader(headerWrapper){var _a;const regex=/([a-f\d]+)?(\/?([a-f\d]+))?(;?o=(\d))?/;const match=(_a=headerWrapper.getHeader(exports.X_CLOUD_TRACE_HEADER))===null||_a===void 0?void 0:_a.toString().match(regex);if(!match)return null;return{trace:match[1],spanId:match[3],traceSampled:match[5]==="1"}}exports.parseXCloudTraceHeader=parseXCloudTraceHeader;function parseTraceParentHeader(headerWrapper){var _a;const VERSION_PART="(?!ff)[\\da-f]{2}";const TRACE_ID_PART="(?![0]{32})[\\da-f]{32}";const PARENT_ID_PART="(?![0]{16})[\\da-f]{16}";const FLAGS_PART="[\\da-f]{2}";const TRACE_PARENT_REGEX=new RegExp(`^\\s?(${VERSION_PART})-(${TRACE_ID_PART})-(${PARENT_ID_PART})-(${FLAGS_PART})(-.*)?\\s?$`);const match=(_a=headerWrapper.getHeader(exports.W3C_TRACE_PARENT_HEADER))===null||_a===void 0?void 0:_a.toString().match(TRACE_PARENT_REGEX);if(!match)return null;if(match[1]==="00"&&match[5])return null;return{trace:match[2],spanId:match[3],traceSampled:parseInt(match[4],16)===1}}exports.parseTraceParentHeader=parseTraceParentHeader; | ||
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.parseTraceParentHeader=exports.parseXCloudTraceHeader=exports.getContextFromTraceParent=exports.getContextFromXCloudTrace=exports.getOrInjectContext=exports.makeHeaderWrapper=exports.W3C_TRACE_PARENT_HEADER=exports.X_CLOUD_TRACE_HEADER=void 0;const uuid=require("uuid");const crypto=require("crypto");exports.X_CLOUD_TRACE_HEADER="x-cloud-trace-context";const SPAN_ID_RANDOM_BYTES=8;const spanIdBuffer=Buffer.alloc(SPAN_ID_RANDOM_BYTES);const randomFillSync=crypto.randomFillSync;const randomBytes=crypto.randomBytes;const spanRandomBuffer=randomFillSync?()=>randomFillSync(spanIdBuffer):()=>randomBytes(SPAN_ID_RANDOM_BYTES);exports.W3C_TRACE_PARENT_HEADER="traceparent";function makeHeaderWrapper(req){if(!req.headers)return null;const wrapper={setHeader(name,value){req.headers[name]=value},getHeader(name){return req.headers[name]}};return wrapper}exports.makeHeaderWrapper=makeHeaderWrapper;function getOrInjectContext(req,projectId,inject){const defaultContext=toCloudTraceContext({},projectId);const wrapper=makeHeaderWrapper(req);if(wrapper){const traceContext=getContextFromTraceParent(wrapper,projectId);if(traceContext)return traceContext;const cloudContext=getContextFromXCloudTrace(wrapper,projectId);if(cloudContext)return cloudContext;if(inject){wrapper.setHeader(exports.X_CLOUD_TRACE_HEADER,makeCloudTraceHeader());return getContextFromXCloudTrace(wrapper,projectId)}}return defaultContext}exports.getOrInjectContext=getOrInjectContext;function toCloudTraceContext(anyContext,projectId){const context={trace:""};if(anyContext===null||anyContext===void 0?void 0:anyContext.trace){context.trace=`projects/${projectId}/traces/${anyContext.trace}`}if(anyContext===null||anyContext===void 0?void 0:anyContext.spanId){context.spanId=anyContext.spanId}if("traceSampled"in anyContext){context.traceSampled=anyContext.traceSampled}return context}function makeCloudTraceHeader(){const trace=uuid.v4().replace(/-/g,"");const spanId=spanRandomBuffer().toString("hex");return`${trace}/${spanId}`}function getContextFromXCloudTrace(headerWrapper,projectId){const context=parseXCloudTraceHeader(headerWrapper);if(!context)return null;return toCloudTraceContext(context,projectId)}exports.getContextFromXCloudTrace=getContextFromXCloudTrace;function getContextFromTraceParent(headerWrapper,projectId){const context=parseTraceParentHeader(headerWrapper);if(!context)return null;return toCloudTraceContext(context,projectId)}exports.getContextFromTraceParent=getContextFromTraceParent;function parseXCloudTraceHeader(headerWrapper){var _a;const regex=/([a-f\d]+)?(\/?([a-f\d]+))?(;?o=(\d))?/;const match=(_a=headerWrapper.getHeader(exports.X_CLOUD_TRACE_HEADER))===null||_a===void 0?void 0:_a.toString().match(regex);if(!match)return null;return{trace:match[1],spanId:match[3],traceSampled:match[5]==="1"}}exports.parseXCloudTraceHeader=parseXCloudTraceHeader;function parseTraceParentHeader(headerWrapper){var _a;const VERSION_PART="(?!ff)[\\da-f]{2}";const TRACE_ID_PART="(?![0]{32})[\\da-f]{32}";const PARENT_ID_PART="(?![0]{16})[\\da-f]{16}";const FLAGS_PART="[\\da-f]{2}";const TRACE_PARENT_REGEX=new RegExp(`^\\s?(${VERSION_PART})-(${TRACE_ID_PART})-(${PARENT_ID_PART})-(${FLAGS_PART})(-.*)?\\s?$`);const match=(_a=headerWrapper.getHeader(exports.W3C_TRACE_PARENT_HEADER))===null||_a===void 0?void 0:_a.toString().match(TRACE_PARENT_REGEX);if(!match)return null;if(match[1]==="00"&&match[5])return null;return{trace:match[2],spanId:match[3],traceSampled:(parseInt(match[4],16)&1)===1}}exports.parseTraceParentHeader=parseTraceParentHeader; | ||
//# sourceMappingURL=context.js.map |
{ | ||
"name": "@google-cloud/logging-min", | ||
"version": "9.8.1", | ||
"version": "9.8.2", | ||
"description": "Stackdriver Logging Client Library for Node.js", | ||
@@ -5,0 +5,0 @@ "keywords": [ |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
2291214