Skip to content

Commit

Permalink
cleanup_stats: Add satistic data avoiding fill the whole hash table
Browse files Browse the repository at this point in the history
  • Loading branch information
thiagoftsm committed Mar 6, 2024
1 parent 82723c6 commit f497f99
Showing 1 changed file with 72 additions and 4 deletions.
76 changes: 72 additions & 4 deletions src/networkviewer.bpf.c
Original file line number Diff line number Diff line change
Expand Up @@ -161,8 +161,6 @@ static __always_inline void set_common_tcp_nv_data(netdata_nv_idx_t *idx,

if (data->state > 12)
return;

bpf_map_update_elem(&tbl_nv_socket, idx, data, BPF_ANY);
}

static __always_inline void set_common_udp_nv_data(netdata_nv_idx_t *idx,
Expand All @@ -188,8 +186,6 @@ static __always_inline void set_common_udp_nv_data(netdata_nv_idx_t *idx,

if (data->state > 12)
return;

bpf_map_update_elem(&tbl_nv_socket, idx, data, BPF_ANY);
}

/***********************************************************************************
Expand Down Expand Up @@ -220,6 +216,10 @@ int BPF_KRETPROBE(netdata_nv_inet_csk_accept_kretprobe)
netdata_nv_data_t data = { };
set_common_tcp_nv_data(&idx, &data, sk, family, 0, direction);

bpf_map_update_elem(&tbl_nv_socket, &idx, &data, BPF_ANY);

libnetdata_update_global(&nv_ctrl, NETDATA_CONTROLLER_PID_TABLE_ADD, 1);

return 0;
}

Expand All @@ -245,6 +245,10 @@ int BPF_KPROBE(netdata_nv_tcp_v4_connect_kprobe)
netdata_nv_data_t data = { };
set_common_tcp_nv_data(&idx, &data, sk, family, 0, direction);

bpf_map_update_elem(&tbl_nv_socket, &idx, &data, BPF_ANY);

libnetdata_update_global(&nv_ctrl, NETDATA_CONTROLLER_PID_TABLE_ADD, 1);

return 0;
}

Expand All @@ -270,6 +274,10 @@ int BPF_KPROBE(netdata_nv_tcp_v6_connect_kprobe)
netdata_nv_data_t data = { };
set_common_tcp_nv_data(&idx, &data, sk, family, 0, direction);

bpf_map_update_elem(&tbl_nv_socket, &idx, &data, BPF_ANY);

libnetdata_update_global(&nv_ctrl, NETDATA_CONTROLLER_PID_TABLE_ADD, 1);

return 0;
}

Expand All @@ -295,6 +303,10 @@ int BPF_KPROBE(netdata_nv_tcp_retransmit_skb_kprobe)
netdata_nv_data_t data = { };
set_common_tcp_nv_data(&idx, &data, sk, family, 0, direction);

bpf_map_update_elem(&tbl_nv_socket, &idx, &data, BPF_ANY);

libnetdata_update_global(&nv_ctrl, NETDATA_CONTROLLER_PID_TABLE_ADD, 1);

return 0;
}

Expand All @@ -321,6 +333,10 @@ int BPF_KPROBE(netdata_nv_tcp_cleanup_rbuf_kprobe)
netdata_nv_data_t data = { };
set_common_tcp_nv_data(&idx, &data, sk, family, 0, direction);

bpf_map_update_elem(&tbl_nv_socket, &idx, &data, BPF_ANY);

libnetdata_update_global(&nv_ctrl, NETDATA_CONTROLLER_PID_TABLE_ADD, 1);

return 0;
}

Expand Down Expand Up @@ -350,6 +366,10 @@ int BPF_KPROBE(netdata_nv_tcp_set_state_kprobe)
data.state = state;
set_common_tcp_nv_data(&idx, &data, sk, family, 0, direction);

bpf_map_update_elem(&tbl_nv_socket, &idx, &data, BPF_ANY);

libnetdata_update_global(&nv_ctrl, NETDATA_CONTROLLER_PID_TABLE_ADD, 1);

return 0;
}

Expand All @@ -375,6 +395,10 @@ int BPF_KPROBE(netdata_nv_tcp_sendmsg_kprobe)
netdata_nv_data_t data = { };
set_common_tcp_nv_data(&idx, &data, sk, family, 0, direction);

bpf_map_update_elem(&tbl_nv_socket, &idx, &data, BPF_ANY);

libnetdata_update_global(&nv_ctrl, NETDATA_CONTROLLER_PID_TABLE_ADD, 1);

return 0;
}

Expand Down Expand Up @@ -420,6 +444,10 @@ int BPF_KPROBE(netdata_nv_udp_sendmsg_kprobe)
netdata_nv_data_t data = { };
set_common_udp_nv_data(&idx, &data, sk, family, direction);

bpf_map_update_elem(&tbl_nv_socket, &idx, &data, BPF_ANY);

libnetdata_update_global(&nv_ctrl, NETDATA_CONTROLLER_PID_TABLE_ADD, 1);

return 0;
}

Expand Down Expand Up @@ -449,6 +477,10 @@ int BPF_KPROBE(netdata_nv_udp_recvmsg_kprobe)
direction = NETDATA_SOCKET_DIRECTION_OUTBOUND | NETDATA_SOCKET_DIRECTION_INBOUND;
set_common_udp_nv_data(&idx, &data, sk, family, direction);

bpf_map_update_elem(&tbl_nv_socket, &idx, &data, BPF_ANY);

libnetdata_update_global(&nv_ctrl, NETDATA_CONTROLLER_PID_TABLE_ADD, 1);

return 0;
}

Expand Down Expand Up @@ -479,6 +511,10 @@ int BPF_PROG(netdata_nv_inet_csk_accept_fexit, struct sock *sk)
netdata_nv_data_t data = { };
set_common_tcp_nv_data(&idx, &data, sk, family, 0, direction);

bpf_map_update_elem(&tbl_nv_socket, &idx, &data, BPF_ANY);

libnetdata_update_global(&nv_ctrl, NETDATA_CONTROLLER_PID_TABLE_ADD, 1);

return 0;
}

Expand All @@ -503,6 +539,10 @@ int BPF_PROG(netdata_nv_tcp_v4_connect_fentry, struct sock *sk, struct sockaddr
netdata_nv_data_t data = { };
set_common_tcp_nv_data(&idx, &data, sk, family, 0, direction);

bpf_map_update_elem(&tbl_nv_socket, &idx, &data, BPF_ANY);

libnetdata_update_global(&nv_ctrl, NETDATA_CONTROLLER_PID_TABLE_ADD, 1);

return 0;
}

Expand All @@ -527,6 +567,10 @@ int BPF_PROG(netdata_nv_tcp_v6_connect_fentry, struct sock *sk, struct sockaddr
netdata_nv_data_t data = { };
set_common_tcp_nv_data(&idx, &data, sk, family, 0, direction);

bpf_map_update_elem(&tbl_nv_socket, &idx, &data, BPF_ANY);

libnetdata_update_global(&nv_ctrl, NETDATA_CONTROLLER_PID_TABLE_ADD, 1);

return 0;
}

Expand All @@ -551,6 +595,10 @@ int BPF_PROG(netdata_nv_tcp_retransmit_skb_fentry, struct sock *sk)
netdata_nv_data_t data = { };
set_common_tcp_nv_data(&idx, &data, sk, family, 0, direction);

bpf_map_update_elem(&tbl_nv_socket, &idx, &data, BPF_ANY);

libnetdata_update_global(&nv_ctrl, NETDATA_CONTROLLER_PID_TABLE_ADD, 1);

return 0;
}

Expand All @@ -576,6 +624,10 @@ int BPF_PROG(netdata_nv_tcp_cleanup_rbuf_fentry, struct sock *sk, int copied)
netdata_nv_data_t data = { };
set_common_tcp_nv_data(&idx, &data, sk, family, 0, direction);

bpf_map_update_elem(&tbl_nv_socket, &idx, &data, BPF_ANY);

libnetdata_update_global(&nv_ctrl, NETDATA_CONTROLLER_PID_TABLE_ADD, 1);

return 0;
}

Expand All @@ -602,6 +654,10 @@ int BPF_PROG(netdata_nv_tcp_set_state_fentry, struct sock *sk, int state)
data.state = state;
set_common_tcp_nv_data(&idx, &data, sk, family, 0, direction);

bpf_map_update_elem(&tbl_nv_socket, &idx, &data, BPF_ANY);

libnetdata_update_global(&nv_ctrl, NETDATA_CONTROLLER_PID_TABLE_ADD, 1);

return 0;
}

Expand All @@ -626,6 +682,10 @@ int BPF_PROG(netdata_nv_tcp_sendmsg_fentry, struct sock *sk, struct msghdr *msg,
netdata_nv_data_t data = { };
set_common_tcp_nv_data(&idx, &data, sk, family, 0, direction);

bpf_map_update_elem(&tbl_nv_socket, &idx, &data, BPF_ANY);

libnetdata_update_global(&nv_ctrl, NETDATA_CONTROLLER_PID_TABLE_ADD, 1);

return 0;
}

Expand Down Expand Up @@ -666,6 +726,10 @@ int BPF_PROG(netdata_nv_udp_sendmsg_fentry, struct sock *sk, struct msghdr *msg,
netdata_nv_data_t data = { };
set_common_udp_nv_data(&idx, &data, sk, family, direction);

bpf_map_update_elem(&tbl_nv_socket, &idx, &data, BPF_ANY);

libnetdata_update_global(&nv_ctrl, NETDATA_CONTROLLER_PID_TABLE_ADD, 1);

return 0;
}

Expand Down Expand Up @@ -695,6 +759,10 @@ int BPF_PROG(netdata_nv_udp_recvmsg_fentry, struct sock *sk)
direction = NETDATA_SOCKET_DIRECTION_OUTBOUND | NETDATA_SOCKET_DIRECTION_INBOUND;
set_common_udp_nv_data(&idx, &data, sk, family, direction);

bpf_map_update_elem(&tbl_nv_socket, &idx, &data, BPF_ANY);

libnetdata_update_global(&nv_ctrl, NETDATA_CONTROLLER_PID_TABLE_ADD, 1);

return 0;
}

Expand Down

0 comments on commit f497f99

Please sign in to comment.