[ 
https://issues.apache.org/jira/browse/ZOOKEEPER-5036?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

ASF GitHub Bot updated ZOOKEEPER-5036:
--------------------------------------
    Labels: pull-request-available  (was: )

> Add Timeline Metrics Provider for external metrics collection systems
> ---------------------------------------------------------------------
>
>                 Key: ZOOKEEPER-5036
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-5036
>             Project: ZooKeeper
>          Issue Type: New Feature
>          Components: metric system, server
>            Reporter: Himanshu Maurya
>            Assignee: Himanshu Maurya
>            Priority: Major
>              Labels: pull-request-available
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> *Summary*
> Add a new Timeline Metrics Provider that enables ZooKeeper to export metrics 
> to external Timeline-based metrics collection systems such as Apache Ambari 
> Metrics Collector and YARN Timeline Service.
> *Motivation*
> Currently, ZooKeeper supports Prometheus metrics provider but lacks built-in 
> support for Timeline metrics format used by Hadoop ecosystem monitoring 
> tools. This enhancement enables seamless integration with existing Hadoop 
> monitoring infrastructure.
> *Implementation*
>   * New module: {{zookeeper-timeline-metrics}}
>   * Provider class: 
> {{org.apache.zookeeper.metrics.timeline.TimelineMetricsProvider}}
>   * Pluggable sink architecture with dynamic class loading
>   * Configurable via {{zoo.cfg}} properties
>   * Periodic metrics collection and export (default: 60 seconds)
>   * Supports all ZooKeeper metric types: Counter, Gauge, Summary, and their 
> Set variants
> *Configuration Example*
> {code:java}
> metricsProvider.className=org.apache.zookeeper.metrics.timeline.TimelineMetricsProvider
> metricsProvider.timeline.sink.class=org.apache.hadoop.metrics2.sink.timeline.ZooKeeperTimelineMetricsSink
> metricsProvider.timeline.collection.period=60
> metricsProvider.timeline.hostname=zk1.example.com
> metricsProvider.timeline.appId=zookeeper
> metricsProvider.timeline.collector.hosts=collector.example.com {code}
>  *Benefits*
>   * No code changes required in ZooKeeper core
>   * Backward compatible - existing metrics providers continue to work
>   * Zero runtime dependencies - sink JARs loaded optionally from classpath
>   * Graceful degradation - ZooKeeper operates normally if sink unavailable
>   * Flexible - supports any Timeline-compatible metrics collector
> Corresponding Ambari Jira :- AMBARI-26595



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to