| author | |
| committer | |
| log | 1f5c9ddbe7fe0f5a1ea0df32e1724d2354449493 |
| tree | c311d8e43fee3760c83d909345c704aa21f1dc84 |
| parent | 3a5fdea4ffd387a53ac2a42fb503557cdbe20696 |
| signature | Signed by SSH key SHA256:4hHJbtBRU58AYXwjL7fkz2fnQHdiye8x1QpTCQ0sHNw |
2 files changed, 5 insertions(+), 10 deletions(-)
README.md+1-1| ... | @@ -3,7 +3,7 @@ | ... | @@ -3,7 +3,7 @@ |
| 3 |  | 3 |  |
| 4 | [](https://github.com/nektro/zig-tracer/blob/master/LICENSE) | 4 | [](https://github.com/nektro/zig-tracer/blob/master/LICENSE) |
| 5 | [](https://github.com/sponsors/nektro) | 5 | [](https://github.com/sponsors/nektro) |
| 6 | [](https://ziglang.org/) | 6 | [](https://ziglang.org/) |
| 7 | [](https://github.com/nektro/zigmod) | 7 | [](https://github.com/nektro/zigmod) |
| 8 | 8 | ||
| 9 | Generic tracing library for Zig, supports multiple backends. | 9 | Generic tracing library for Zig, supports multiple backends. |
src/otel.zig+4-9| ... | @@ -141,21 +141,16 @@ fn deinit_thread_inner() !void { | ... | @@ -141,21 +141,16 @@ fn deinit_thread_inner() !void { |
| 141 | { | 141 | { |
| 142 | var client: std.http.Client = .{ .allocator = allocator }; | 142 | var client: std.http.Client = .{ .allocator = allocator }; |
| 143 | defer client.deinit(); | 143 | defer client.deinit(); |
| 144 | var buf: [4096]u8 = @splat(0); | 144 | var req = try client.request(.POST, traces_endpoint, .{ |
| 145 | var req = try client.open(.POST, traces_endpoint, .{ | ||
| 146 | .server_header_buffer = &buf, | ||
| 147 | .headers = .{ | 145 | .headers = .{ |
| 148 | .content_type = .{ .override = "application/x-protobuf" }, | 146 | .content_type = .{ .override = "application/x-protobuf" }, |
| 149 | }, | 147 | }, |
| 150 | .redirect_behavior = .not_allowed, | 148 | .redirect_behavior = .not_allowed, |
| 151 | }); | 149 | }); |
| 152 | defer req.deinit(); | 150 | defer req.deinit(); |
| 153 | req.transfer_encoding = .{ .content_length = export_request.items.len }; | 151 | try req.sendBodyComplete(export_request.items); |
| 154 | try req.send(); | 152 | const resp = try req.receiveHead(&.{}); |
| 155 | try req.writeAll(export_request.items); | 153 | if (resp.head.status != .ok) std.log.scoped(.tracer).warn("otel: {s} {d}", .{ &extras.to_hex(trace_id), resp.head.status }); |
| 156 | try req.finish(); | ||
| 157 | try req.wait(); | ||
| 158 | if (req.response.status != .ok) std.log.scoped(.tracer).warn("otel: {s} {d}", .{ &extras.to_hex(trace_id), req.response.status }); | ||
| 159 | } | 154 | } |
| 160 | } | 155 | } |
| 161 | 156 |