File tree Expand file tree Collapse file tree 6 files changed +76
-24
lines changed
opentelemetry-otlp/src/exporter Expand file tree Collapse file tree 6 files changed +76
-24
lines changed Original file line number Diff line number Diff line change @@ -30,20 +30,24 @@ impl LogExporter for OtlpHttpClient {
3030 }
3131
3232 let request_uri = request. uri ( ) . to_string ( ) ;
33- otel_debug ! ( name: "HttpLogsClient.CallingExport " ) ;
33+ otel_debug ! ( name: "HttpLogsClient.ExportStarted " ) ;
3434 let response = client
3535 . send_bytes ( request)
3636 . await
3737 . map_err ( |e| OTelSdkError :: InternalFailure ( format ! ( "{e:?}" ) ) ) ?;
38+
3839 if !response. status ( ) . is_success ( ) {
3940 let error = format ! (
4041 "OpenTelemetry logs export failed. Url: {}, Status Code: {}, Response: {:?}" ,
4142 request_uri,
4243 response. status( ) . as_u16( ) ,
4344 response. body( )
4445 ) ;
46+ otel_debug ! ( name: "HttpLogsClient.ExportFailed" , error = & error) ;
4547 return Err ( OTelSdkError :: InternalFailure ( error) ) ;
4648 }
49+
50+ otel_debug ! ( name: "HttpLogsClient.ExportSucceeded" ) ;
4751 Ok ( ( ) )
4852 }
4953
Original file line number Diff line number Diff line change @@ -33,13 +33,30 @@ impl MetricsClient for OtlpHttpClient {
3333 request. headers_mut ( ) . insert ( k. clone ( ) , v. clone ( ) ) ;
3434 }
3535
36- otel_debug ! ( name: "HttpMetricsClient.CallingExport" ) ;
37- client
38- . send_bytes ( request)
39- . await
40- . map_err ( |e| OTelSdkError :: InternalFailure ( format ! ( "{e:?}" ) ) ) ?;
36+ otel_debug ! ( name: "HttpMetricsClient.ExportStarted" ) ;
37+ let result = client. send_bytes ( request) . await ;
4138
42- Ok ( ( ) )
39+ match result {
40+ Ok ( response) => {
41+ if response. status ( ) . is_success ( ) {
42+ otel_debug ! ( name: "HttpMetricsClient.ExportSucceeded" ) ;
43+ Ok ( ( ) )
44+ } else {
45+ let error = format ! (
46+ "OpenTelemetry metrics export failed. Status Code: {}, Response: {:?}" ,
47+ response. status( ) . as_u16( ) ,
48+ response. body( )
49+ ) ;
50+ otel_debug ! ( name: "HttpMetricsClient.ExportFailed" , error = & error) ;
51+ Err ( OTelSdkError :: InternalFailure ( error) )
52+ }
53+ }
54+ Err ( e) => {
55+ let error = format ! ( "{e:?}" ) ;
56+ otel_debug ! ( name: "HttpMetricsClient.ExportFailed" , error = & error) ;
57+ Err ( OTelSdkError :: InternalFailure ( error) )
58+ }
59+ }
4360 }
4461
4562 fn shutdown ( & self ) -> OTelSdkResult {
Original file line number Diff line number Diff line change @@ -42,7 +42,7 @@ impl SpanExporter for OtlpHttpClient {
4242 }
4343
4444 let request_uri = request. uri ( ) . to_string ( ) ;
45- otel_debug ! ( name: "HttpTracesClient.CallingExport " ) ;
45+ otel_debug ! ( name: "HttpTracesClient.ExportStarted " ) ;
4646 let response = client
4747 . send_bytes ( request)
4848 . await
@@ -51,13 +51,15 @@ impl SpanExporter for OtlpHttpClient {
5151 if !response. status ( ) . is_success ( ) {
5252 let error = format ! (
5353 "OpenTelemetry trace export failed. Url: {}, Status Code: {}, Response: {:?}" ,
54- response. status( ) . as_u16( ) ,
5554 request_uri,
55+ response. status( ) . as_u16( ) ,
5656 response. body( )
5757 ) ;
58+ otel_debug ! ( name: "HttpTracesClient.ExportFailed" , error = & error) ;
5859 return Err ( OTelSdkError :: InternalFailure ( error) ) ;
5960 }
6061
62+ otel_debug ! ( name: "HttpTracesClient.ExportSucceeded" ) ;
6163 Ok ( ( ) )
6264 }
6365
Original file line number Diff line number Diff line change @@ -72,17 +72,27 @@ impl LogExporter for TonicLogsClient {
7272
7373 let resource_logs = group_logs_by_resource_and_scope ( batch, & self . resource ) ;
7474
75- otel_debug ! ( name: "TonicsLogsClient.CallingExport " ) ;
75+ otel_debug ! ( name: "TonicLogsClient.ExportStarted " ) ;
7676
77- client
77+ let result = client
7878 . export ( Request :: from_parts (
7979 metadata,
8080 extensions,
8181 ExportLogsServiceRequest { resource_logs } ,
8282 ) )
83- . await
84- . map_err ( |e| OTelSdkError :: InternalFailure ( format ! ( "export error: {:?}" , e) ) ) ?;
85- Ok ( ( ) )
83+ . await ;
84+
85+ match result {
86+ Ok ( _) => {
87+ otel_debug ! ( name: "TonicLogsClient.ExportSucceeded" ) ;
88+ Ok ( ( ) )
89+ }
90+ Err ( e) => {
91+ let error = format ! ( "export error: {:?}" , e) ;
92+ otel_debug ! ( name: "TonicLogsClient.ExportFailed" , error = & error) ;
93+ Err ( OTelSdkError :: InternalFailure ( error) )
94+ }
95+ }
8696 }
8797
8898 fn shutdown_with_timeout ( & self , _timeout : time:: Duration ) -> OTelSdkResult {
Original file line number Diff line number Diff line change @@ -75,18 +75,27 @@ impl MetricsClient for TonicMetricsClient {
7575 ) ) ,
7676 } ) ?;
7777
78- otel_debug ! ( name: "TonicsMetricsClient.CallingExport " ) ;
78+ otel_debug ! ( name: "TonicMetricsClient.ExportStarted " ) ;
7979
80- client
80+ let result = client
8181 . export ( Request :: from_parts (
8282 metadata,
8383 extensions,
8484 ExportMetricsServiceRequest :: from ( metrics) ,
8585 ) )
86- . await
87- . map_err ( |e| OTelSdkError :: InternalFailure ( format ! ( "{e:?}" ) ) ) ?;
86+ . await ;
8887
89- Ok ( ( ) )
88+ match result {
89+ Ok ( _) => {
90+ otel_debug ! ( name: "TonicMetricsClient.ExportSucceeded" ) ;
91+ Ok ( ( ) )
92+ }
93+ Err ( e) => {
94+ let error = format ! ( "{e:?}" ) ;
95+ otel_debug ! ( name: "TonicMetricsClient.ExportFailed" , error = & error) ;
96+ Err ( OTelSdkError :: InternalFailure ( error) )
97+ }
98+ }
9099 }
91100
92101 fn shutdown ( & self ) -> OTelSdkResult {
Original file line number Diff line number Diff line change @@ -76,17 +76,27 @@ impl SpanExporter for TonicTracesClient {
7676
7777 let resource_spans = group_spans_by_resource_and_scope ( batch, & self . resource ) ;
7878
79- otel_debug ! ( name: "TonicsTracesClient.CallingExport " ) ;
79+ otel_debug ! ( name: "TonicTracesClient.ExportStarted " ) ;
8080
81- client
81+ let result = client
8282 . export ( Request :: from_parts (
8383 metadata,
8484 extensions,
8585 ExportTraceServiceRequest { resource_spans } ,
8686 ) )
87- . await
88- . map_err ( |e| OTelSdkError :: InternalFailure ( e. to_string ( ) ) ) ?;
89- Ok ( ( ) )
87+ . await ;
88+
89+ match result {
90+ Ok ( _) => {
91+ otel_debug ! ( name: "TonicTracesClient.ExportSucceeded" ) ;
92+ Ok ( ( ) )
93+ }
94+ Err ( e) => {
95+ let error = e. to_string ( ) ;
96+ otel_debug ! ( name: "TonicTracesClient.ExportFailed" , error = & error) ;
97+ Err ( OTelSdkError :: InternalFailure ( error) )
98+ }
99+ }
90100 }
91101
92102 fn shutdown ( & mut self ) -> OTelSdkResult {
You can’t perform that action at this time.
0 commit comments