2
2
import { registerInstrumentations } from '@opentelemetry/instrumentation' ;
3
3
import { SEMRESATTRS_SERVICE_NAME } from '@opentelemetry/semantic-conventions' ;
4
4
import { diag , DiagConsoleLogger , DiagLogLevel } from '@opentelemetry/api' ;
5
+ import { trace } from '@opentelemetry/api' ;
6
+
5
7
//import { NodeSDK } from '@opentelemetry/sdk-node';
6
8
import { SpanExporter , Span } from '@opentelemetry/sdk-trace-base' ;
7
9
// , ExportResult
@@ -44,9 +46,9 @@ const traceExporter = new ConsoleSpanExporter();
44
46
45
47
export class CustomConsoleSpanExporter implements SpanExporter {
46
48
export ( spans : Span [ ] , resultCallback : ( result : ExportResult ) => void ) : void {
47
- console . log ( "hello1" )
48
- traceExporter . export ( spans , resultCallback ) ;
49
- traceExporter . export ( traceExporter_zipkin , resultCallback ) ;
49
+ elizaLogger . log ( "hello1" )
50
+ // traceExporter.export(spans,resultCallback);
51
+ // traceExporter.export(traceExporter_zipkin,resultCallback);
50
52
for ( const span of spans ) {
51
53
const spanData = {
52
54
name : span . name ,
@@ -59,21 +61,22 @@ export class CustomConsoleSpanExporter implements SpanExporter {
59
61
status : span . status ,
60
62
kind : span . kind ,
61
63
} ;
62
- console . log ( JSON . stringify ( spanData , null , 2 ) ) ;
64
+ elizaLogger . log ( JSON . stringify ( spanData , null , 2 ) ) ;
63
65
}
64
66
resultCallback ( ExportResult . SUCCESS ) ;
65
67
}
66
68
shutdown ( ) : Promise < void > {
67
69
return Promise . resolve ( ) ;
68
70
}
69
71
}
70
- // const myExporter = new CustomConsoleSpanExporter()
72
+ const myExporter = new CustomConsoleSpanExporter ( )
71
73
72
74
// parts from https://stackoverflow.com/questions/71654897/opentelemetry-typescript-project-zipkin-exporter
73
75
//const { SimpleSpanProcessor } = import('@opentelemetry/sdk-trace-base');
74
76
import { NodeTracerProvider , SimpleSpanProcessor } from "@opentelemetry/sdk-trace-node" ;
75
77
const txz = new SimpleSpanProcessor ( traceExporter_zipkin ) ;
76
78
const tx = new SimpleSpanProcessor ( traceExporter ) ;
79
+ const tx2 = new SimpleSpanProcessor ( myExporter ) ;
77
80
78
81
try {
79
82
const serviceName = 'eliza-agent' ;
84
87
[ ATTR_SERVICE_VERSION ] : '1.0' , } ) ,
85
88
spanProcessors : [
86
89
txz ,
87
- tx
90
+ tx ,
91
+ tx2
88
92
]
89
93
} ) ;
90
94
@@ -98,13 +102,15 @@ try {
98
102
] ,
99
103
} ) ;
100
104
101
- opentelemetry . trace . getTracer ( 'http-example' ) ;
102
- console . log ( "setup!" )
105
+
106
+ elizaLogger . log ( "setup!" )
103
107
} catch ( error ) {
104
- console . log ( "ERROR" , error )
108
+ elizaLogger . log ( "ERROR" , error )
105
109
}
106
110
// const sdk = new NodeSDK({ resource: new Resource({
107
111
112
+ const tracer = opentelemetry . trace . getTracer ( 'ai16z' ) ;
113
+
108
114
// //traceExporter: new ConsoleSpanExporter(),
109
115
// traceExporter: myExporter,
110
116
// //traceExporter_zipkin
@@ -224,11 +230,23 @@ export function parseArguments(): {
224
230
}
225
231
226
232
function tryLoadFile ( filePath : string ) : string | null {
227
- try {
228
- return fs . readFileSync ( filePath , "utf8" ) ;
229
- } catch ( e ) {
230
- return null ;
231
- }
233
+ elizaLogger . log ( `tryLoadFile filePath: ${ filePath } ` ) ;
234
+ const span = tracer . startSpan ( 'tryLoadFile' , {
235
+ // kind: 1, // server
236
+ attributes : { filePath : filePath } ,
237
+ } ) ;
238
+ try {
239
+ const ret = fs . readFileSync ( filePath , "utf8" ) ;
240
+ span . addEvent ( `got ${ ret . length } ` ) ;
241
+
242
+ span . end ( ) ;
243
+ return ret ;
244
+
245
+ } catch ( e ) {
246
+
247
+ span . end ( ) ;
248
+ return null ;
249
+ }
232
250
}
233
251
234
252
function isAllStrings ( arr : unknown [ ] ) : boolean {
@@ -901,7 +919,8 @@ const startAgents = async () => {
901
919
) ;
902
920
} ;
903
921
904
- startAgents ( ) . catch ( ( error ) => {
905
- elizaLogger . error ( "Unhandled error in startAgents:" , error ) ;
906
- process . exit ( 1 ) ;
907
- } ) ;
922
+ startAgents ( ) ;
923
+ //.catch((error) => {
924
+ // elizaLogger.error("Unhandled error in startAgents:", error);
925
+ // process.exit(1);
926
+ //});
0 commit comments