Skip to content
This repository has been archived by the owner on Jul 11, 2023. It is now read-only.

docs(metrics): Add docs for WASM stats #2503

Merged
merged 1 commit into from
Feb 11, 2021
Merged

docs(metrics): Add docs for WASM stats #2503

merged 1 commit into from
Feb 11, 2021

Conversation

nojnhuh
Copy link
Contributor

@nojnhuh nojnhuh commented Feb 10, 2021

Description:
This change adds documentation regarding the WASM-based Envoy extension
used to implement SMI metrics. User-facing docs have been added with
what metrics are generated and known gaps. Developer documentation
includes how to build the extension and a high-level description of how
it works.


This PR is part of several which together extend Envoy to generate custom
metrics needed to implement the SMI metrics spec (#984).
Here is a map of the PRs as they're currently planned:

  1. (ref(injector): pass pod object to getEnvoySidecarContainerSpec #2479) ref(injector): pass pod object to getEnvoySidecarContainerSpec
  2. (feat(metrics): add WASM metrics source #2488) feat(metrics): add WASM metrics source
  3. (YOU ARE HERE) docs(metrics): Add docs for WASM stats
  4. feat(metrics): Add WASM feature flag
  5. feat(metrics): Add stats.wasm to workload pods
  6. feat(injector): Add name, workload name, workload kind to PodMetadata
  7. feat(metrics): Add source labels to WASM metrics
  8. feat(metrics): Add dest labels to WASM metrics
  9. feat(metrics): Add "unknown" for dest labels on local replies
  10. feat(metrics): clean up WASM metrics in Prometheus config
  11. feat(metrics): add flag to enable WASM metrics
  12. tests(e2e): add WASM metrics test

The full set of changes can be found here: main...nojnhuh:wasm-metrics

Affected area:

  • New Functionality [ ]
  • Documentation [X]
  • Install [ ]
  • Control Plane [ ]
  • CLI Tool [ ]
  • Certificate Management [ ]
  • Networking [ ]
  • Metrics [ ]
  • SMI Policy [ ]
  • Security [ ]
  • Tests [ ]
  • CI System [ ]
  • Performance [ ]
  • Other [ ]

Please answer the following questions with yes/no.

  • Does this change contain code from or inspired by another project? If so, did you notify the maintainers and provide attribution?
    No

This change adds documentation regarding the WASM-based Envoy extension
used to implement SMI metrics. User-facing docs have been added with
what metrics are generated and known gaps. Developer documentation
includes how to build the extension and a high-level description of how
it works.

Signed-off-by: Jon Huhn <johuhn@microsoft.com>
@nojnhuh nojnhuh requested a review from a team as a code owner February 10, 2021 16:50
docs/content/docs/development_guide.md Show resolved Hide resolved
@@ -138,6 +138,39 @@ osm metrics disable --namespace test
osm metrics disable --namespace "test1, test2"
```

## Custom Metrics
To implement the [SMI metrics spec][7], OSM adds a custom WebAssembly extension to each Envoy proxy which generates the following statistics for HTTP traffic:
Copy link
Contributor

Choose a reason for hiding this comment

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

We should support these metrics for tcp as well given that OSM now allows TCP traffic. It doesn't need to be solved in this PR but something to make note of

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I agree. For this initial implementation I'll plan to only include compatibility with HTTP. I've opened #2506 to track making it applicable to all TCP traffic.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants