grafana / beyla

eBPF-based autoinstrumentation of web applications and network metrics
https://grafana.com/oss/beyla-ebpf/
Apache License 2.0
1.21k stars 77 forks source link

Cleanup info logs #318

Closed mariomac closed 4 months ago

mariomac commented 8 months ago

many of the following logs should be debug-level, as they provide internal behavior.

time=2023-09-28T06:08:45.585Z level=INFO msg="adding fall-back generic executable" component=ebpf.TracerProvider pid=1363 comm=/usr/sbin/nginx
time=2023-09-28T06:08:45.585Z level=INFO msg=inspecting component=ebpf.TracerProvider pid=1363 comm=/usr/sbin/nginx
time=2023-09-28T06:08:45.585Z level=INFO msg="adding fall-back generic executable" component=ebpf.TracerProvider pid=1363 comm=/usr/sbin/nginx
time=2023-09-28T06:08:45.585Z level=INFO msg=inspecting component=ebpf.TracerProvider pid=1363 comm=/usr/sbin/nginx
time=2023-09-28T06:08:45.585Z level=INFO msg="adding fall-back generic executable" component=ebpf.TracerProvider pid=1363 comm=/usr/sbin/nginx
time=2023-09-28T06:08:45.585Z level=INFO msg=inspecting component=ebpf.TracerProvider pid=1364 comm=/usr/sbin/nginx
time=2023-09-28T06:08:45.585Z level=INFO msg="adding fall-back generic executable" component=ebpf.TracerProvider pid=1364 comm=/usr/sbin/nginx
time=2023-09-28T06:08:45.585Z level=INFO msg=inspecting component=ebpf.TracerProvider pid=1364 comm=/usr/sbin/nginx
time=2023-09-28T06:08:45.585Z level=INFO msg="adding fall-back generic executable" component=ebpf.TracerProvider pid=1364 comm=/usr/sbin/nginx
time=2023-09-28T06:08:45.585Z level=INFO msg="Go HTTP/gRPC support not detected. Using only generic instrumentation." component=ebpf.TracerProvider
time=2023-09-28T06:08:45.585Z level=INFO msg=instrumented component=ebpf.TracerProvider comm=/usr/sbin/nginx pid=1359
time=2023-09-28T06:08:45.585Z level=INFO msg="Starting main node" component=beyla.Instrumenter
time=2023-09-28T06:08:45.585Z level=INFO msg="opening prometheus scrape endpoint" component=connector.PrometheusManager port=8999 path=/internal/metrics
time=2023-09-28T06:08:45.585Z level=INFO msg="opening prometheus scrape endpoint" component=connector.PrometheusManager port=8999 path=/metrics
time=2023-09-28T06:08:45.589Z level=INFO msg="Found namespace" component=httpfltr.Tracer nsPid=pid:[4026531836]
time=2023-09-28T06:08:45.712Z level=INFO msg="finding library" component=ebpf.TracerProvider lib=libssl.so
time=2023-09-28T06:08:45.712Z level=INFO msg="instrumenting library" component=ebpf.TracerProvider lib=libssl.so path=/usr/lib/aarch64-linux-gnu/libssl.so.3
time=2023-09-28T06:08:45.727Z level=INFO msg="finding library" component=ebpf.TracerProvider lib=libSystem.Security.Cryptography.Native.OpenSsl.so
time=2023-09-28T06:08:45.727Z level=INFO msg="libSystem.Security.Cryptography.Native.OpenSsl.so not linked, attempting to instrument executable" component=ebpf.TracerProvider path=/proc/1359/exe
time=2023-09-28T06:08:45.728Z level=INFO msg="error instrumenting uprobe" function=CryptoNative_SslRead error="setting uprobe: symbol CryptoNative_SslRead: not found"
time=2023-09-28T06:08:45.728Z level=INFO msg="error instrumenting uprobe" function=CryptoNative_SslWrite error="setting uprobe: symbol CryptoNative_SslWrite: not found"
time=2023-09-28T06:08:45.728Z level=INFO msg="error instrumenting uprobe" function=CryptoNative_SslDoHandshake error="setting uprobe: symbol CryptoNative_SslDoHandshake: not found"
time=2023-09-28T06:08:45.728Z level=INFO msg="error instrumenting uprobe" function=CryptoNative_SslShutdown error="setting uprobe: symbol CryptoNative_SslShutdown: not found"

For the Info level, it should be something clearer like:

time=2023-09-28T06:08:45.585Z level=INFO msg=instrumented component=ebpf.TracerProvider comm=/usr/sbin/nginx pid=1359
time=2023-09-28T06:08:45.585Z level=INFO msg="Starting main node" component=beyla.Instrumenter
time=2023-09-28T06:08:45.585Z level=INFO msg="opening prometheus scrape endpoint" component=connector.PrometheusManager port=8999 path=/internal/metrics
time=2023-09-28T06:08:45.585Z level=INFO msg="opening prometheus scrape endpoint" component=connector.PrometheusManager port=8999 path=/metrics
gmreads commented 4 months ago

Hi I have been following eBPF based observability for quite some time. Would love to take this up.

grcevski commented 4 months ago

Sure thing @gmreads, we've cleaned up some of those messages that were reported at the wrong level, but there's always improvements we can make here in this space. By all means, we'd be happy to take all improvements you can provide!

gmreads commented 4 months ago

Should I pick up another good-first-issue then ?

Thanks @grcevski is there a status meeting or roadmap of the project I can follow ? From the blogs it looks like enabling distributed tracing seems to be next big target.

grcevski commented 4 months ago

Should I pick up another good-first-issue then ?

Thanks @grcevski is there a status meeting or roadmap of the project I can follow ? From the blogs it looks like enabling distributed tracing seems to be next big target.

How about any of these: https://github.com/grafana/beyla/issues/330 https://github.com/grafana/beyla/issues/247 https://github.com/grafana/beyla/issues/246

I'm happy to provide guidance on any of the above to help you get started.

We are starting a community call this month that will run every week, which I think is what you are looking for. If you can join our slack community channel (unless you are already on) we'll announce it there soon. It will also be posted on our Github repo.

grcevski commented 4 months ago

I'll close this for now, I think majority of logging problems have been resolved, but happy to take PRs for further improvements.