rian 0.3.0-next.5 → 0.3.0-next.7
Sign up to get free protection for your applications and to get access to all the features.
- package/async.d.ts +1 -1
- package/async.js +1 -1
- package/async.mjs +1 -1
- package/exporter.otel.http.js +1 -1
- package/exporter.otel.http.mjs +1 -1
- package/exporter.zipkin.js +1 -1
- package/exporter.zipkin.mjs +1 -1
- package/index.d.ts +11 -6
- package/index.js +1 -1
- package/index.mjs +1 -1
- package/package.json +1 -1
package/async.d.ts
CHANGED
package/async.js
CHANGED
@@ -1 +1 @@
|
|
1
|
-
const { default:e } = require('node:async_hooks');const { measure:t } = require('rian/utils');const { make:n, parse:r, SAMPLED_FLAG:a } = require('tctx');const { is_sampled:o } = require('tctx');var s=new Set,
|
1
|
+
const { default:e } = require('node:async_hooks');const { measure:t } = require('rian/utils');const { make:n, parse:r, SAMPLED_FLAG:a } = require('tctx');const { is_sampled:o } = require('tctx');var s={};function l(e,t={}){s={...t,"service.name":e,"telemetry.sdk.name":"rian","telemetry.sdk.version":"0.3.0-next.6","telemetry.sdk.language":"javascript"}}var p=new Set,c=new WeakMap;async function i(e){let t=[],n=new Map;for(let[e,r]of p){let a;n.has(r)?a=n.get(r).spans:n.set(r,{scope:r,spans:a=[]}),a.push(e),c.has(r)&&(t.push(...c.get(r)),c.delete(r))}return p.clear(),t.length&&await Promise.all(t),e({resource:s,scopeSpans:n.values()})}function u(e,t){return o(t)}var d=new e.AsyncLocalStorage;function m(){return d.getStore()?.[1]||null}function f(e){let r=d.getStore();if(!r)throw Error("TODO");let a=r[0],o=a.scope,s=r[1],l=a.sampler,i=s?.traceparent??a.root_id,u=i?i.child():n(),m="boolean"!=typeof l?l(e,u,o):l;u.flags;let g={id:u,parent:i,start:Date.now(),name:e,events:[],context:{}};m&&p.add([g,o]);let h=e=>d.run([a,h],t,h,e);h.traceparent=u,h.span=f,h.set_context=e=>{"function"!=typeof e?Object.assign(g.context,e):g.context=e(g.context)},h.add_event=(e,t)=>{g.events.push({name:e,timestamp:Date.now(),attributes:t||{}})},h.end=()=>{null==g.end&&(g.end=Date.now())};let v=c.get(o);return h.__add_promise=e=>{v.add(e),e.then((()=>v.delete(e)))},d.run([a,h],(()=>h))}function g(e,t){let n=t?.sampler??u,a={name:e},o={root_id:"string"==typeof t?.traceparent?r(t.traceparent):d.getStore()?.[0].root_id,scope:a,sampler:n};return c.set(a,new Set),{span:e=>d.run([o,null],f,e)}}exports.configure=l;exports.currentSpan=m;exports.report=i;exports.span=f;exports.tracer=g;
|
package/async.mjs
CHANGED
@@ -1 +1 @@
|
|
1
|
-
import{default as e}from"node:async_hooks";import{measure as t}from"rian/utils";import{make as n,parse as r,SAMPLED_FLAG as a}from"tctx";import{is_sampled as o}from"tctx";var s=new Set,
|
1
|
+
import{default as e}from"node:async_hooks";import{measure as t}from"rian/utils";import{make as n,parse as r,SAMPLED_FLAG as a}from"tctx";import{is_sampled as o}from"tctx";var s={};function l(e,t={}){s={...t,"service.name":e,"telemetry.sdk.name":"rian","telemetry.sdk.version":"0.3.0-next.6","telemetry.sdk.language":"javascript"}}var p=new Set,c=new WeakMap;async function i(e){let t=[],n=new Map;for(let[e,r]of p){let a;n.has(r)?a=n.get(r).spans:n.set(r,{scope:r,spans:a=[]}),a.push(e),c.has(r)&&(t.push(...c.get(r)),c.delete(r))}return p.clear(),t.length&&await Promise.all(t),e({resource:s,scopeSpans:n.values()})}function u(e,t){return o(t)}var d=new e.AsyncLocalStorage;function m(){return d.getStore()?.[1]||null}function f(e){let r=d.getStore();if(!r)throw Error("TODO");let a=r[0],o=a.scope,s=r[1],l=a.sampler,i=s?.traceparent??a.root_id,u=i?i.child():n(),m="boolean"!=typeof l?l(e,u,o):l;u.flags;let g={id:u,parent:i,start:Date.now(),name:e,events:[],context:{}};m&&p.add([g,o]);let h=e=>d.run([a,h],t,h,e);h.traceparent=u,h.span=f,h.set_context=e=>{"function"!=typeof e?Object.assign(g.context,e):g.context=e(g.context)},h.add_event=(e,t)=>{g.events.push({name:e,timestamp:Date.now(),attributes:t||{}})},h.end=()=>{null==g.end&&(g.end=Date.now())};let v=c.get(o);return h.__add_promise=e=>{v.add(e),e.then((()=>v.delete(e)))},d.run([a,h],(()=>h))}function g(e,t){let n=t?.sampler??u,a={name:e},o={root_id:"string"==typeof t?.traceparent?r(t.traceparent):d.getStore()?.[0].root_id,scope:a,sampler:n};return c.set(a,new Set),{span:e=>d.run([o,null],f,e)}}export{l as configure,m as currentSpan,i as report,f as span,g as tracer};
|
package/exporter.otel.http.js
CHANGED
@@ -1 +1 @@
|
|
1
|
-
var e=r=>{let
|
1
|
+
var e=r=>{let a=typeof r,s={};return"string"===a?s.stringValue=r:"number"===a?Number.isInteger(r)?s.intValue=r:s.doubleValue=r:"boolean"===a?s.boolValue=r:Array.isArray(r)?s.arrayValue={values:r.map((t=>e(t)))}:r&&(s.kvlistValue={values:t(r)}),s},t=t=>{let r=[];for(let a of Object.keys(t))r.push({key:a,value:e(t[a])});return r},r=e=>{switch(e){default:case"INTERNAL":return 1;case"SERVER":return 2;case"CLIENT":return 3;case"PRODUCER":return 4;case"CONSUMER":return 5}},a=e=>a=>{let s=[];for(let e of a.scopeSpans){let a=[];s.push({scope:e.scope,spans:a});for(let s of e.spans){let e,{kind:n,error:u,...o}=s.context;u&&(e={code:2},"message"in u&&(e.message=u.message)),a.push({traceId:s.id.trace_id,spanId:s.id.parent_id,parentSpanId:s.parent?.parent_id,name:s.name,kind:r(n||"INTERNAL"),startTimeUnixNano:1e6*s.start,endTimeUnixNano:s.end?1e6*s.end:void 0,droppedAttributesCount:0,droppedEventsCount:0,droppedLinksCount:0,attributes:t(o),status:e||{code:0},events:s.events.map((e=>({name:e.name,attributes:t(e.attributes),droppedAttributesCount:0,timeUnixNano:1e6*e.timestamp})))})}}return e({resourceSpans:[{resource:{attributes:t(a.resource),droppedAttributesCount:0},scopeSpans:s}]})};exports.exporter=a;
|
package/exporter.otel.http.mjs
CHANGED
@@ -1 +1 @@
|
|
1
|
-
var e=r=>{let
|
1
|
+
var e=r=>{let a=typeof r,s={};return"string"===a?s.stringValue=r:"number"===a?Number.isInteger(r)?s.intValue=r:s.doubleValue=r:"boolean"===a?s.boolValue=r:Array.isArray(r)?s.arrayValue={values:r.map((t=>e(t)))}:r&&(s.kvlistValue={values:t(r)}),s},t=t=>{let r=[];for(let a of Object.keys(t))r.push({key:a,value:e(t[a])});return r},r=e=>{switch(e){default:case"INTERNAL":return 1;case"SERVER":return 2;case"CLIENT":return 3;case"PRODUCER":return 4;case"CONSUMER":return 5}},a=e=>a=>{let s=[];for(let e of a.scopeSpans){let a=[];s.push({scope:e.scope,spans:a});for(let s of e.spans){let e,{kind:n,error:u,...o}=s.context;u&&(e={code:2},"message"in u&&(e.message=u.message)),a.push({traceId:s.id.trace_id,spanId:s.id.parent_id,parentSpanId:s.parent?.parent_id,name:s.name,kind:r(n||"INTERNAL"),startTimeUnixNano:1e6*s.start,endTimeUnixNano:s.end?1e6*s.end:void 0,droppedAttributesCount:0,droppedEventsCount:0,droppedLinksCount:0,attributes:t(o),status:e||{code:0},events:s.events.map((e=>({name:e.name,attributes:t(e.attributes),droppedAttributesCount:0,timeUnixNano:1e6*e.timestamp})))})}}return e({resourceSpans:[{resource:{attributes:t(a.resource),droppedAttributesCount:0},scopeSpans:s}]})};export{a as exporter};
|
package/exporter.zipkin.js
CHANGED
@@ -1 +1 @@
|
|
1
|
-
const { flattie:e } = require('flattie');var t=t=>a=>{let r=[];for(let t of a)for(let
|
1
|
+
const { flattie:e } = require('flattie');var t=t=>a=>{let r=[];for(let t of a.scopeSpans)for(let n of t.spans){let{kind:s,error:i,...o}=n.context;i&&(o.error=!("message"in i)||{name:i.name,message:i.message,stack:i.stack}),r.push({id:n.id.parent_id,traceId:n.id.trace_id,parentId:n.parent?n.parent.parent_id:void 0,name:n.name,kind:"INTERNAL"===s?void 0:s,timestamp:1e3*n.start,duration:n.end?1e3*(n.end-n.start):void 0,localEndpoint:{serviceName:`${a.resource["service.name"]}@${t.scope.name}`},tags:e({...a.resource,...o},".",!0),annotations:n.events.map((e=>({value:`${e.name} :: ${JSON.stringify(e.attributes)}`,timestamp:1e3*e.timestamp})))})}return t(r)};exports.exporter=t;
|
package/exporter.zipkin.mjs
CHANGED
@@ -1 +1 @@
|
|
1
|
-
import{flattie as e}from"flattie";var t=t=>a=>{let r=[];for(let t of a)for(let
|
1
|
+
import{flattie as e}from"flattie";var t=t=>a=>{let r=[];for(let t of a.scopeSpans)for(let n of t.spans){let{kind:s,error:i,...o}=n.context;i&&(o.error=!("message"in i)||{name:i.name,message:i.message,stack:i.stack}),r.push({id:n.id.parent_id,traceId:n.id.trace_id,parentId:n.parent?n.parent.parent_id:void 0,name:n.name,kind:"INTERNAL"===s?void 0:s,timestamp:1e3*n.start,duration:n.end?1e3*(n.end-n.start):void 0,localEndpoint:{serviceName:`${a.resource["service.name"]}@${t.scope.name}`},tags:e({...a.resource,...o},".",!0),annotations:n.events.map((e=>({value:`${e.name} :: ${JSON.stringify(e.attributes)}`,timestamp:1e3*e.timestamp})))})}return t(r)};export{t as exporter};
|
package/index.d.ts
CHANGED
@@ -6,11 +6,14 @@ import type { Traceparent } from 'tctx';
|
|
6
6
|
* An exporter is a method called when the parent scope ends, gets given a Set of all spans traced
|
7
7
|
* during this execution.
|
8
8
|
*/
|
9
|
-
export type Exporter = (
|
10
|
-
|
11
|
-
export type Resource = {
|
9
|
+
export type Exporter = (trace: {
|
12
10
|
resource: Context;
|
13
|
-
|
11
|
+
scopeSpans: IterableIterator<ScopedSpans>;
|
12
|
+
}) => any;
|
13
|
+
|
14
|
+
export type ScopedSpans = {
|
15
|
+
readonly scope: { readonly name: string };
|
16
|
+
readonly spans: ReadonlyArray<Readonly<Span>>;
|
14
17
|
};
|
15
18
|
|
16
19
|
export type Options = {
|
@@ -19,7 +22,7 @@ export type Options = {
|
|
19
22
|
*/
|
20
23
|
sampler?: Sampler | boolean;
|
21
24
|
|
22
|
-
context?: Context;
|
25
|
+
//context?: Context;
|
23
26
|
|
24
27
|
/**
|
25
28
|
* A root, or extracted w3c traceparent stringed header.
|
@@ -50,7 +53,7 @@ export type Context = {
|
|
50
53
|
export type Sampler = (
|
51
54
|
readonly name: string,
|
52
55
|
readonly id: Traceparent,
|
53
|
-
readonly
|
56
|
+
readonly scope: { readonly name: string },
|
54
57
|
) => boolean;
|
55
58
|
|
56
59
|
// --- spans
|
@@ -189,3 +192,5 @@ export function tracer(name: string, options?: Options): Tracer;
|
|
189
192
|
export async function report<T extends Exporter>(
|
190
193
|
exporter: T,
|
191
194
|
): Promise<ReturnType<T>>;
|
195
|
+
|
196
|
+
export function configure(name: string, attributes: Context = {}): void;
|
package/index.js
CHANGED
@@ -1 +1 @@
|
|
1
|
-
const { measureFn:e } = require('rian/utils');const { make:t, parse:n, SAMPLED_FLAG:a } = require('tctx');const { is_sampled:r } = require('tctx');var o=new Set,
|
1
|
+
const { measureFn:e } = require('rian/utils');const { make:t, parse:n, SAMPLED_FLAG:a } = require('tctx');const { is_sampled:r } = require('tctx');var s={};function o(e,t={}){s={...t,"service.name":e,"telemetry.sdk.name":"rian","telemetry.sdk.version":"0.3.0-next.6","telemetry.sdk.language":"javascript"}}var p=new Set,i=new WeakMap;async function l(e){let t=[],n=new Map;for(let[e,a]of p){let r;n.has(a)?r=n.get(a).spans:n.set(a,{scope:a,spans:r=[]}),r.push(e),i.has(a)&&(t.push(...i.get(a)),i.delete(a))}return p.clear(),t.length&&await Promise.all(t),e({resource:s,scopeSpans:n.values()})}function c(e,t){return r(t)}function d(a,r){let s=r?.sampler??c,o={name:a},l=new Set;i.set(o,l);let d="string"==typeof r?.traceparent?n(r.traceparent):void 0,m=(n,a)=>{let r=a?a.child():t(),i="boolean"!=typeof s?s(n,r,o):s;r.flags;let c={id:r,parent:a,start:Date.now(),name:n,events:[],context:{}};i&&p.add([c,o]);let d=t=>e(d,t);return d.traceparent=r,d.span=e=>m(e,r),d.set_context=e=>"function"==typeof e?void(c.context=e(c.context)):void Object.assign(c.context,e),d.add_event=(e,t)=>{c.events.push({name:e,timestamp:Date.now(),attributes:t||{}})},d.end=()=>{null==c.end&&(c.end=Date.now())},d.__add_promise=e=>{l.add(e),e.then((()=>l.delete(e)))},d};return{span:e=>m(e,d)}}exports.configure=o;exports.report=l;exports.tracer=d;
|
package/index.mjs
CHANGED
@@ -1 +1 @@
|
|
1
|
-
import{measureFn as e}from"rian/utils";import{make as t,parse as n,SAMPLED_FLAG as a}from"tctx";import{is_sampled as r}from"tctx";var o=new Set,
|
1
|
+
import{measureFn as e}from"rian/utils";import{make as t,parse as n,SAMPLED_FLAG as a}from"tctx";import{is_sampled as r}from"tctx";var s={};function o(e,t={}){s={...t,"service.name":e,"telemetry.sdk.name":"rian","telemetry.sdk.version":"0.3.0-next.6","telemetry.sdk.language":"javascript"}}var p=new Set,i=new WeakMap;async function l(e){let t=[],n=new Map;for(let[e,a]of p){let r;n.has(a)?r=n.get(a).spans:n.set(a,{scope:a,spans:r=[]}),r.push(e),i.has(a)&&(t.push(...i.get(a)),i.delete(a))}return p.clear(),t.length&&await Promise.all(t),e({resource:s,scopeSpans:n.values()})}function c(e,t){return r(t)}function d(a,r){let s=r?.sampler??c,o={name:a},l=new Set;i.set(o,l);let d="string"==typeof r?.traceparent?n(r.traceparent):void 0,m=(n,a)=>{let r=a?a.child():t(),i="boolean"!=typeof s?s(n,r,o):s;r.flags;let c={id:r,parent:a,start:Date.now(),name:n,events:[],context:{}};i&&p.add([c,o]);let d=t=>e(d,t);return d.traceparent=r,d.span=e=>m(e,r),d.set_context=e=>"function"==typeof e?void(c.context=e(c.context)):void Object.assign(c.context,e),d.add_event=(e,t)=>{c.events.push({name:e,timestamp:Date.now(),attributes:t||{}})},d.end=()=>{null==c.end&&(c.end=Date.now())},d.__add_promise=e=>{l.add(e),e.then((()=>l.delete(e)))},d};return{span:e=>m(e,d)}}export{o as configure,l as report,d as tracer};
|