Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Docs: Create network metrics docs #675

Merged
merged 13 commits into from
Mar 14, 2024
Merged

Docs: Create network metrics docs #675

merged 13 commits into from
Mar 14, 2024

Conversation

mariomac
Copy link
Contributor

@mariomac mariomac commented Mar 7, 2024

No description provided.

@mariomac mariomac added do-not-merge WIP or something that musn't be merged wip labels Mar 7, 2024
@codecov-commenter
Copy link

codecov-commenter commented Mar 7, 2024

Codecov Report

Attention: Patch coverage is 40.00000% with 3 lines in your changes are missing coverage. Please review.

Project coverage is 76.95%. Comparing base (490a82c) to head (4ec23fe).
Report is 1 commits behind head on main.

Files Patch % Lines
pkg/components/beyla.go 33.33% 2 Missing ⚠️
pkg/beyla/config.go 0.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #675      +/-   ##
==========================================
- Coverage   77.40%   76.95%   -0.45%     
==========================================
  Files          96       96              
  Lines        8016     8016              
==========================================
- Hits         6205     6169      -36     
- Misses       1470     1507      +37     
+ Partials      341      340       -1     
Flag Coverage Δ
integration-test 67.85% <40.00%> (-0.53%) ⬇️
unittests 39.33% <0.00%> (+0.07%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

Copy link
Contributor

@grcevski grcevski left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! I wouldn't worry about the prose to be honest, I found it too restrictive for my language and style, but if you want to fight and get it through do it :).

@gouthamve gouthamve requested a review from grafsean March 12, 2024 12:32
Copy link
Contributor

@grafsean grafsean left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've committed an edit for _index.md, and quickstart.md.

I have a few questions, and still would like to do another light pass to quickstart.md and full pass on config.md.


## Metric attributes

Network metrics provides a single **OpenTelemetry** metric `beyla.network.flow.bytes`, a counter of the total bytes sent of network flows observed by the eBPF probe since its launch, with the following attributes:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I edited the sentence but kept the wording, "total bytes sent of network flows observed by the eBPF probe since its launch", but it feels a little unclear. Could someone explain this phrase in another way so I can make sure we capture the description?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe we can just say "a counter of the number of bytes observed between two network endpoints"?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like that 👍


Network metrics provides a single **OpenTelemetry** metric `beyla.network.flow.bytes`, a counter of the total bytes sent of network flows observed by the eBPF probe since its launch, with the following attributes:

- `beyla.ip`: the local IP address of the Beyla instance that emitted the metric
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are the attribute pairs mutually exclusive or can they both occur? Could we separate them to their own lines, even better can we use a table?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

They can Both occur. I will use a table, thanks for the suggestion!

name: grafana-secret
```

## Select metrics attributes to reduce cardinality
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are we going to add content for these two sections?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, this is a WIP PR.

@grafsean grafsean changed the title Documentation for network monitoring [WIP]Create network metrics docs Mar 13, 2024
@grafsean grafsean marked this pull request as draft March 13, 2024 09:32
@grafsean grafsean changed the title [WIP]Create network metrics docs [WIP]Docs: Create network metrics docs Mar 13, 2024
@mariomac mariomac removed do-not-merge WIP or something that musn't be merged wip labels Mar 13, 2024
@mariomac mariomac marked this pull request as ready for review March 13, 2024 11:56
@mariomac mariomac changed the title [WIP]Docs: Create network metrics docs Docs: Create network metrics docs Mar 13, 2024
Copy link
Member

@gouthamve gouthamve left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! With a few comments :)

Lets ship this today!

examples/asserts/rules-entity-relation.yml Show resolved Hide resolved
Comment on lines +57 to +71
### Allowed attributes

If the metric with all the attributes is reported it might lead to a cardinality explosion, especially when including external traffic in the `src.address`/`dst.address` attributes.

You can specify which attributes are allowed in the Beyla configuration. Allowed attributes and aggregates the metrics by them. For example:

```yaml
network:
enable: true
allowed_attributes:
- k8s.src.owner.name
- k8s.src.namespace
- k8s.dst.owner.name
- k8s.dst.namespace
```
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should be the default set while others can enabled explicitly by the user.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Working on it on another PR and later I'll amend this.

Copy link
Contributor

@grafsean grafsean left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Finished editing.

@mariomac mariomac merged commit 4b26321 into grafana:main Mar 14, 2024
6 checks passed
@mariomac mariomac deleted the net-docs branch March 14, 2024 11:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants