|
|
@@ -248,7 +248,7 @@ void send_event(void *ctx, struct l7_event *e, __u32 pid, __u64 fd) {
|
|
|
e->pid = pid;
|
|
|
long error = bpf_perf_event_output(ctx, &l7_events, BPF_F_CURRENT_CPU, e, sizeof(*e));
|
|
|
if (error ==0){
|
|
|
- cw_add_event_count(e->trace_id);
|
|
|
+ cw_add_event_count(e->trace_id);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -593,6 +593,7 @@ int trace_enter_write(void *ctx, __u64 fd, __u16 is_tls, char *buf, __u64 size,
|
|
|
e->method = METHOD_HTTP2_CLIENT_FRAMES;
|
|
|
e->duration = bpf_ktime_get_ns();
|
|
|
e->payload_size = size;
|
|
|
+ e->trace_id = get_apm_trace_id(pid, tid);
|
|
|
COPY_PAYLOAD(e->payload, size, payload);
|
|
|
send_event(ctx, e, k.pid, k.fd);
|
|
|
return 0;
|
|
|
@@ -681,6 +682,7 @@ int trace_exit_read(void *ctx, __u64 id, __u32 pid, __u16 is_tls, long int ret)
|
|
|
e->method = METHOD_UNKNOWN;
|
|
|
e->statement_id = 0;
|
|
|
e->payload_size = 0;
|
|
|
+ e->trace_id = 0;
|
|
|
__u8 b[8];
|
|
|
bpf_read(payload, b);
|
|
|
// __u32 k0 = 0;
|
|
|
@@ -796,6 +798,7 @@ int trace_exit_read(void *ctx, __u64 id, __u32 pid, __u16 is_tls, long int ret)
|
|
|
e->method = METHOD_HTTP2_SERVER_FRAMES;
|
|
|
e->duration = bpf_ktime_get_ns();
|
|
|
e->payload_size = ret;
|
|
|
+ e->trace_id = get_apm_trace_id(pid, tid);
|
|
|
COPY_PAYLOAD(e->payload, ret, payload);
|
|
|
send_event(ctx, e, k.pid, k.fd);
|
|
|
return 0;
|