janhoy opened a new pull request, #4284: URL: https://github.com/apache/solr/pull/4284
https://issues.apache.org/jira/browse/SOLR-18165 PR #4223 converted the majority of Solr metric instrument names from `underscore_delimited` to `dot.separated` OTel standard naming. Several files were missed or only partially converted. This PR completes that work. ### Files changed **`AuditLoggerPlugin.java`** — all 7 metric names were still in old `solr_auditlogger_*` format; converted to `solr.auditlogger.*`. **`CaffeineCache.java`** — the default base metric name `"solr_caffeine_cache"` and the five metric name suffixes (`_lookups`, `_ops`, `_size`, `_ram_used`, `_warmup_time`) were still using underscores as namespace separators. Converted to `"solr.caffeine_cache"` base with dot-prefixed suffixes (`.lookups`, `.ops`, `.size`, `.ram_used`, `.warmup_time`). **`ZkContainer.java`** — all 7 metrics still in old `solr_zk_*` format; converted to `solr.zk.*`. **`OtelMetrics.java` (cross-dc-manager)** — all 8 metric names were in old `crossdc_consumer_*` format. The `NAME_PREFIX` constant is updated to `"crossdc.consumer."` and all suffix strings are converted to dot-separated. ### Metric name mapping | Old name | New name | Comments | |---|---|---| | `solr_auditlogger_count` | `solr.auditlogger.count` | | | `solr_auditlogger_errors` | `solr.auditlogger.errors` | | | `solr_auditlogger_lost` | `solr.auditlogger.lost` | | | `solr_auditlogger_request_times` | `solr.auditlogger.request_times` | Leaf kept as compound word | | `solr_auditlogger_queue` | `solr.auditlogger.queue` | | | `solr_auditlogger_queued_time` | `solr.auditlogger.queued_time` | Leaf kept as compound word | | `solr_auditlogger_async_enabled` | `solr.auditlogger.async_enabled` | Leaf kept as compound word | | `solr_caffeine_cache_lookups` | `solr.caffeine_cache.lookups` | `caffeine_cache` is the cache type name | | `solr_caffeine_cache_ops` | `solr.caffeine_cache.ops` | | | `solr_caffeine_cache_size` | `solr.caffeine_cache.size` | | | `solr_caffeine_cache_ram_used` | `solr.caffeine_cache.ram_used` | Leaf kept as compound word | | `solr_caffeine_cache_warmup_time` | `solr.caffeine_cache.warmup_time` | Leaf kept as compound word | | `solr_zk_ops` | `solr.zk.ops` | | | `solr_zk_read` | `solr.zk.read` | | | `solr_zk_watches_fired` | `solr.zk.watches_fired` | Leaf kept as compound word | | `solr_zk_written` | `solr.zk.written` | | | `solr_zk_cumulative_multi_ops_total` | `solr.zk.cumulative.multi_ops.total` | Leaf kept as compound word; | | `solr_zk_child_fetches` | `solr.zk.child.fetches` | | | `solr_zk_cumulative_children_fetched` | `solr.zk.cumulative.children_fetched` | Leaf kept as compound word | | `crossdc_consumer_input_msg_total` | `crossdc.consumer.input.msg.total` | Consider `_total`? | | `crossdc_consumer_input_req_total` | `crossdc.consumer.input.req.total` | | | `crossdc_consumer_collapsed_total` | `crossdc.consumer.collapsed.total` | | | `crossdc_consumer_output_total` | `crossdc.consumer.output.total` | | | `crossdc_consumer_output_batch_size` | `crossdc.consumer.output.batch_size` | Leaf kept as compound word | | `crossdc_consumer_output_backoff_time` | `crossdc.consumer.output.backoff_time` | Leaf kept as compound word | | `crossdc_consumer_output_time` | `crossdc.consumer.output.time` | | | `crossdc_consumer_output_first_attempt_time` | `crossdc.consumer.output.first_attempt_time` | Leaf kept as compound word | **Questions:** * Do you agree with the name mappings above? * The two existing `solr_zk_child_fetches` and `solr_zk_cumulative_children_fetched` both talk about the same thing, only cumulative is total? So a bit strange that they use `child_fetches` vs `children_fetched`. Should `solr.zk.child.fetches` instead be `solr.zk.child_fetches` to align with `solr_zk_cumulative_children_fetched`? Or should we do a breaking change here and align naming? * The crossdc consumer metrics do not have a `solr.` prefix. The corresponsing producer metrics use `solr.core.crossdc.producer.XXX`. So ideally consumer would also use `solr.core.crossdc.consumer.XXX`. Or why the **core** part in there? Should we do a breaking change here, for one or for both? -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
