Releases: grafana/beyla
v1.8.6
v1.8.5
v1.8.4
v1.8.3
v0.0.7-pre
What's Changed
Test release for the purpose of verifying if the fix to OTel metric expiration works with the temporary branch.
Breaking changes 🔨
- Cleanup UID/InstanceID duplicity. Also remove
override_instance_id
config option by @mariomac in #1125 - Fix instance and job in prometheus, and document honor_labels by @mariomac in #1130
Bug fixes 🐛
Other changes/additions
- Add 'watch services' permission to unprivileged example by @marevers in #1126
- Fix OS capabilities by @grcevski in #1131
- Update OTEL collector library to v0.108.1 by @mariomac in #1133
- Helm chart: allow unprivileged deployment of Beyla by @marevers in #1128
- Update OTEL collector library to v0.108.1 (1.8 backport) by @mariomac in #1134
- Automatic update of offsets.json by @github-actions in #1136
- Docs: Fix link to 'Beyla and Kubernetes walkthrough' by @marevers in #1141
Full Changelog: v1.8.3...v0.0.7-pre
v1.8.1
What's Changed
Update OTEL collector library from v0.102.0 to v0.108.1. This should have no visible effect on users but will enable the integration of Beyla in the next version of Grafana Alloy.
Full Changelog: v1.8.0...v1.8.1
v1.8.0
What's Changed
Breaking changes 🔨
Network metrics: new behavior of the direction
field
The direction
attribute (whose values were ingress
/egress
until Beyla 1.7.0) has been renamed to iface_direction
. This attribute specifies in which direction of the network interface is a flow captured (ingress or egress).
Since Beyla 1.8.0, the direction
attribute shows the direction of a connection (valid for TCP): request
or response
.
PR: #1074
Process CPU metrics: rename attribute process.cpu.state
to cpu.mode
Process metrics are still an experimental/unstable OpenTelemetry specification. We renamed that attribute according to the latest changes in the specification.
PR: #1110
Internal metrics: renamed beyla_build_info
to beyla_internal_build_info
This breaking change should not have noticeable effect in someone, as internal metrics are aimed to debug Beyla.
PR: #1119
Bug fixes 🐛
- Improving thread safety of K8s informer DB by @mariomac in #1118
- Prevent negative network tx/rx data for process by @mariomac in #1123
- Fix OTEL_RESOURCE_ATTRIBUTES variable by @rafaelroquetto in #1085
- Fix handling of different iovec struct layouts / enums by @rafaelroquetto in #1086
- Fix handling of ITER_IOVEC by @rafaelroquetto in #1090
Other changes/additions
- adding Rafael to list of maintainers by @mariomac in #1076
- Update ClusterRole permissions in documentation by @mariomac in #1079
- Update ClusterRole permissions in documentation [1.7 backport] by @mariomac in #1081
- Check if required capabilities are available by @rafaelroquetto in #1067
- Helm Chart 1.3.0 with Beyla 1.7.0 by @mariomac in #1078
- Automatic update of offsets.json by @github-actions in #1084
- Improve debug information for old kernels by @grcevski in #1088
- Automatic update of offsets.json by @github-actions in #1089
- Attempt fix missing http calls by @grcevski in #1092
- Use kprobe for unreliable recvmsg return probe by @grcevski in #1095
- Update Alloy examples matching newer version by @marctc in #1094
- Memory optimizations for various parts of the code by @grcevski in #1096
- Add Beyla debug dashboard by @marctc in #1098
- Validate timeout greater than 0s for InformersSyncTimeout by @marctc in #1103
- Fix slog errors by @rafaelroquetto in #1104
- Fix coverage exclusion pattern by @mariomac in #1106
- Detect OTel instrumentations in applications by @grcevski in #1101
- Update
make docs
procedure by @github-actions in #1102 - Update Go version to 1.23 by @mariomac in #1105
- Fixing compilation on Mac by @mariomac in #1107
- Split iovec reading for tcp_recvmsg by @grcevski in #1108
- Support testing different kernel versions by @rafaelroquetto in #1100
- Terminate Beyla if we can't open a configured Prometheus port by @grcevski in #1111
- Add some default settings for beyla network metrics by @xujiaxj in #1112
- Remove self references from service graphs by @grcevski in #1115
- Automatic update of offsets.json by @github-actions in #1116
- K8s net attributes: default src/dst owner type by @mariomac in #1114
- Resolve node ips by @grcevski in #1121
New Contributors
Full Changelog: v1.7.0...v1.8.0
v1.7.1-alpha.2
What's Changed
Other changes/additions
- Use kprobe for unreliable recvmsg return probe by @grcevski in #1095
- Update Alloy examples matching newer version by @marctc in #1094
Full Changelog: v1.7.1-alpha.1...v1.7.1-alpha.2
v1.7.1-alpha.1
What's Changed
Breaking changes 🔨
Other changes/additions
- adding Rafael to list of maintainers by @mariomac in #1076
- Update ClusterRole permissions in documentation by @mariomac in #1079
- Update ClusterRole permissions in documentation [1.7 backport] by @mariomac in #1081
- Check if required capabilities are available by @rafaelroquetto in #1067
- Helm Chart 1.3.0 with Beyla 1.7.0 by @mariomac in #1078
- Fix OTEL_RESOURCE_ATTRIBUTES variable by @rafaelroquetto in #1085
- Fix handling of different iovec struct layouts / enums by @rafaelroquetto in #1086
- Automatic update of offsets.json by @github-actions in #1084
- Improve debug information for old kernels by @grcevski in #1088
- Automatic update of offsets.json by @github-actions in #1089
- Fix handling of ITER_IOVEC by @rafaelroquetto in #1090
- Attempt fix missing http calls by @grcevski in #1092
Full Changelog: v1.7.0...v1.7.1-alpha.1
v1.7.0
Beyla 1.7.0 is out with a huge amount of features and bugfixes!
Please check the Beyla documentation for more information about how to configure and enable them: https://grafana.com/docs/beyla/latest/
What's Changed
Breaking changes 🔨
Use proper pre/suffixes for internal metrics names by @marctc in #941
This breaking change would only affect users configuring Beyla to report internal metrics of its own Behavior (mainly used for performance testing and debugging purposes)
Fix typo in BPF debug yaml field by @marctc in #964
Replaces the bfp_debug
configuration option by bpf_debug
. This option is mainly used by Beyla developers for internal debugging.
enable by default: server_address and server_port attributes by @mariomac in #989
The user still has the possibility to disable them by means of the attributes selection YAML section.
Set heuristic as default value for unmatched routes arg by @marctc in #988
The user still has the possibility to disable heuristic routes in the routes
YAML configuration.
Bug fixes 🐛
- check kafka pkt length before parsing clientid by @esara in #906
- Fix race condition in Expiry Map by @mariomac in #946
- Fix OTEL traces URL endpoint by @mariomac in #952
- App metrics/traces: decorate peer service IPs with service names by @mariomac in #968
- Improve .NET language detection by @marctc in #967
- Avoid un-understandable Pipes panics by @mariomac in #1012
- remove client.address as default attribute on RPC metrics by @mariomac in #1022
- Fix missing gRPC/HTTP2 events by @grcevski in #867
Highlighted additions
Reporting application processes
Add application_process
to the BEYLA_OTEL_METRIC_FEATURES
or BEYLA_PROMETHEUS_FEATURES
option to get the following Process metrics:
process.cpu.time
process.cpu.utilization
process.memory.usage
process.memory.virtual
process.disk.io
process.network.io
New supported protocols for Go and Non-Go programs
Beyla now supports the following application protocols for both Go programs:
- Redis
- Kafka
- SQL
Network metrics, new client.port
and server.port
attributes
Network metrics bring src.port
and dst.port
, which would be swapped in request and response network metrics. client.port
and server.port
remain consistent for both request and response network metrics.
Other changes/additions
- Remove check-ebpf-integrity from release_binaries task (1.6 backport) by @mariomac in #850
- Remove check-ebpf-integrity from release_binaries task by @mariomac in #849
- Update OpenTelemetry SDK to 1.27 by @mariomac in #853
- Fix array index panic on SQL parsing (1.6 backport) by @mariomac in #856
- Fix array index panic on SQL parsing by @mariomac in #855
- Change the PID filter implementation to use bloom filter by @grcevski in #851
- Track connection errors in grpc_go by @grcevski in #852
- Fix attributes filter network documentation by @mariomac in #861
- Improve http2/grpc termination detection by @grcevski in #858
- Restore service.name as metric attribute by @mariomac in #868
- Update default Beyla version in helm chart by @mariomac in #862
- Add config options for traces backoff config by @marctc in #865
- Update Gopsutil library to v3 by @mariomac in #884
- Update
make docs
procedure by @github-actions in #888 - Initial infrastructure for dealing with Kafka protocol in Go by @grcevski in #886
- Fix http parsing for duplicate HTTP by @grcevski in #887
- Updating image version in documentation by @mariomac in #866
- Add support for tracking Redis client calls for non-Go programs by @grcevski in #891
- Add instrumentation for redis in Go by @grcevski in #894
- Automatic update of offsets.json by @github-actions in #896
- Fix DNS resolution error when network monitoring is turned on by @kirankumar-grootan in #898
- Add kafka support by @marctc in #890
- Fix typo in metrics.md by @marctc in #902
- Fixes for SQL detection and Go events handled by kprobes by @grcevski in #901
- Automatic update of offsets.json by @github-actions in #904
- Foundation to report application processes by @mariomac in #892
- Push Go Kafka events using the current parser by @grcevski in #900
- Fix code coverage reports for testing by @mariomac in #908
- Prometheus process metrics exporter by @mariomac in #907
- Report Redis failed calls by @grcevski in #909
- Remove beyla metrics and traces by default by @grcevski in #910
- Automatic update of offsets.json by @github-actions in #913
- Bump collector SDK version to 102 by @grcevski in #912
- Complete process metrics for CPU by @mariomac in #911
- Decorate process metrics with kubernetes metadata by @mariomac in #917
- check for empty redis commands by @esara in #916
- Improve process discovery performance by @grcevski in #919
- Process memory metrics by @mariomac in #922
- Support kafka fetch version 15 by @grcevski in #903
- Speed up HTTP2 check by @grcevski in #923
- Process metrics for disk I/O bytes by @mariomac in #924
- Process network metrics by @mariomac in #925
- Various fixes for corrupt gRPC URLs and wrong request directions by @grcevski in #930
- Add elixir based integration test by @grcevski in #938
- Using experimental OTEL API for removing metrics by @mariomac in #937
- Add metric for instrumented processes by @marctc in #928
- Fix flaky unit test by @mariomac in #939
- More reliable SSL black-box tracing tracking by @grcevski in #940
- Fix delayed SSL server trace cleanup by @grcevski in #942
- Fixes for service naming, redis and kafka support by @grcevski in #945
- Fix link in options.md by @marctc in #947
- OTEL: removing metrics from removed entities by @mariomac in #948
- Fix bpf load problems on older kernels by @grcevski in #949
- Process memory metrics: report deltas instead of absolute values in OTEL exporter by @mariomac in #950
- Direction based on flags instead of relation between src_port and dst_port by @bareckidarek in #883
- updated pipeline map with process metrics by @mariomac in #951
- Fix one more grpc wrong direction bug by @grcevski in #954
- max_entries of flow_directions map sets from configuration by @bareckidarek in #959
- Update to new oats, improve tests by @grcevski in #957
- Add logger to display BPF logs by @marctc in #955
- Fix default config value in Helm chart by @marctc in #961
- Remove unnecessary filtered connection info map by @grcevski in #963
- Add ability to choose what instrumentations are enabled by @grcevski in #958
- Merging app and network K8s informers by @mariomac in #956
- Optimize InstrumentationSelection by @mariomac in #965
- Remove commented code by @marctc in #966
- Add detection for PHP language by @marctc in https://github.com/grafana/beyla/p...