Files
76c2c85b97 [Generator] Add DRAIN span_name sanitizer (#6098)
* [Generator] Add DRAIN span_name sanitizer

* Fix linter

* Fix formatting

* Update default manifest

* Fix build error in update-fixtures

* Remove bad test

* Remove misleading comment

* Add per-tenant override for drain mode

* Do a machines job

* Address PR feedback

* Address PR review: rename drain_mode config and improve sanitizer

- Rename `drain_mode` to `span_name_sanitization` across all config,
  legacy config, interfaces, and overrides for better user-facing clarity
- Add explicit default value "disabled" in RegisterFlagsAndApplyDefaults
- Add ValidateSpanNameSanitization function in validation/fields.go
- Rename metrics to remove DRAIN reference:
  `drain_spans_compacted_total` -> `spans_sanitized_total`
  `post_drain_demand_estimate` -> `post_sanitization_demand_estimate`
- Pass configured staleDuration to NewDrainSanitizer instead of
  hardcoded 15min, consistent with other registry components
- Extract "span_name" magic string to labelSpanName constant
- Update all tests with new names and signatures

* Update manifest

* Use empty string as disabled

* Update CHANGELOG.md

Co-authored-by: Suraj Nath <[email protected]>

* Update manifest

---------

Co-authored-by: Suraj Nath <[email protected]>
2026-02-22 00:55:22 -08:00

163 lines
4.4 KiB
YAML

# Project information
site_name: Otter
site_url: https://maypok86.github.io/otter/
site_author: Alexey Mayshev
# Repository
repo_name: maypok86/otter
repo_url: https://github.com/maypok86/otter
remote_branch: main
edit_uri: ""
# Copyright
copyright: Copyright &copy; 2024-2025 Alexey Mayshev
# Configuration
theme:
name: material
logo: assets/icon.png
favicon: assets/icon.png
icon:
repo: fontawesome/brands/github
features:
- navigation.tracking
- navigation.instant
- navigation.tabs
- navigation.tabs.sticky
- navigation.top
#- navigation.sections
- navigation.indexes
- toc.follow
- content.code.copy
- content.tabs.link
- search.suggest
- search.highlight
font:
text: Roboto
code: JetBrains Mono
palette:
# Palette toggle for light mode
- media: "(prefers-color-scheme: light)"
scheme: default
primary: teal
accent: blue
toggle:
icon: material/lightbulb-outline
name: Switch to dark mode
# Palette toggle for dark mode
- media: "(prefers-color-scheme: dark)"
scheme: slate
primary: teal
accent: blue
toggle:
icon: material/lightbulb
name: Switch to light mode
# Plugins
plugins:
- blog:
post_url_format: "{slug}"
archive: false
- glightbox
- search:
separator: '[\s\u200b\-_,:!=\[\]()"`/]+|\.(?!\d)|&[lg]t;|(?!\b)(?=[A-Z][a-z])'
- minify:
minify_html: true
- tags
# Additional configuration
extra:
status:
new: Recently added
deprecated: Deprecated
social:
- icon: fontawesome/brands/github
link: https://github.com/maypok86
- icon: fontawesome/brands/golang
link: https://pkg.go.dev/github.com/maypok86/otter/v2
# Extensions
markdown_extensions:
- abbr
- admonition
- attr_list
- def_list
- footnotes
- md_in_html
- toc:
permalink: true
- pymdownx.arithmatex:
generic: true
- pymdownx.betterem:
smart_enable: all
- pymdownx.caret
- pymdownx.details
- pymdownx.emoji:
emoji_generator: !!python/name:material.extensions.emoji.to_svg
emoji_index: !!python/name:material.extensions.emoji.twemoji
- pymdownx.highlight:
anchor_linenums: true
line_spans: __span
pygments_lang_class: true
- pymdownx.inlinehilite
- pymdownx.keys
- pymdownx.magiclink:
normalize_issue_symbols: true
repo_url_shorthand: true
user: maypok86
repo: otter
- pymdownx.mark
- pymdownx.smartsymbols
- pymdownx.superfences:
custom_fences:
- name: mermaid
class: mermaid
format: !!python/name:pymdownx.superfences.fence_code_format
- pymdownx.tabbed:
alternate_style: true
combine_header_slug: true
slugify: !!python/object/apply:pymdownx.slugs.slugify
kwds:
case: lower
- pymdownx.tasklist:
custom_checkbox: true
- pymdownx.tilde
- pymdownx.snippets
nav:
- Overview:
- Overview: index.md
- Ask a question: https://github.com/maypok86/otter/discussions/categories/q-a
- User guide:
- v2 manual:
- Getting started: user-guide/v2/getting-started.md
- Examples: user-guide/v2/examples.md
- Features:
- user-guide/v2/features/index.md
- Eviction: user-guide/v2/features/eviction.md
- Deletion: user-guide/v2/features/deletion.md
- Loading: user-guide/v2/features/loading.md
- Refresh: user-guide/v2/features/refresh.md
- Bulk operations: user-guide/v2/features/bulk.md
- Compute: user-guide/v2/features/compute.md
- Statistics: user-guide/v2/features/statistics.md
- Persistence: user-guide/v2/features/persistence.md
- Extension: user-guide/v2/features/extension.md
- Iteration: user-guide/v2/features/iteration.md
- v1 manual:
- Getting started: user-guide/v1/getting-started.md
- Features:
- user-guide/v1/features/index.md
- Expiration policy: user-guide/v1/features/expiration-policy.md
- Cost-based eviction: user-guide/v1/features/cost.md
- Statistics: user-guide/v1/features/stats.md
- API: api/index.md
- Performance:
- Design: performance/design.md
- Throughput: performance/throughput.md
- Hit ratio: performance/hit-ratio.md
- Memory consumption: performance/memory-consumption.md
- Blog:
- blog/index.md