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

Christine Poerschke updated SOLR-4735:
--------------------------------------
    Attachment: SOLR-4735.patch

As I mentioned yesterday in SOLR-8785, in our team my colleague Kelvin Wong is 
currently also working on metrics stuff.

The attached patch is Kelvin's work. (I only rebased it on top of the now 
committed SOLR-8785 changes and made minor adjustments in a couple of places.)

Comments, questions, reviews, etc. welcome as usual. Thank you.

----

SOLR-4735: pluggable SolrMetricReporter support e.g. SolrJmxReporter
    
* SolrMetric(Info|Producer|Manager|Reporter) classes with tests
* SolrJmxReporter class with test
* SolrCore changes:
** instantiates a SolrMetricManager
** loads any configured SolrMetricReporters into the SolrMetricManager
** registerInfoBean includes registering with the SolrMetricManager (for beans 
that implement the SolrMetricProducer interface)
* RequestHandlerBase changes:
** codahale metrics.Meter used instead of java atomic.LongAdder to count errors 
and timeouts
** getMetrics() method (implementing SolrMetricProducer interface) added
    
next planned steps:
* couple of minor TODO's in the code
* add test which uses a solrconfig.xml that configures (test) 
SolrMetricReporter(s)
* 'ant beast' the new tests


> Improve Solr metrics reporting
> ------------------------------
>
>                 Key: SOLR-4735
>                 URL: https://issues.apache.org/jira/browse/SOLR-4735
>             Project: Solr
>          Issue Type: Improvement
>            Reporter: Alan Woodward
>            Assignee: Alan Woodward
>            Priority: Minor
>         Attachments: SOLR-4735.patch, SOLR-4735.patch, SOLR-4735.patch, 
> SOLR-4735.patch
>
>
> Following on from a discussion on the mailing list:
> http://search-lucene.com/m/IO0EI1qdyJF1/codahale&subj=Solr+metrics+in+Codahale+metrics+and+Graphite+
> It would be good to make Solr play more nicely with existing devops 
> monitoring systems, such as Graphite or Ganglia.  Stats monitoring at the 
> moment is poll-only, either via JMX or through the admin stats page.  I'd 
> like to refactor things a bit to make this more pluggable.
> This patch is a start.  It adds a new interface, InstrumentedBean, which 
> extends SolrInfoMBean to return a 
> [[Metrics|http://metrics.codahale.com/manual/core/]] MetricRegistry, and a 
> couple of MetricReporters (which basically just duplicate the JMX and admin 
> page reporting that's there at the moment, but which should be more 
> extensible).  The patch includes a change to RequestHandlerBase showing how 
> this could work.  The idea would be to eventually replace the getStatistics() 
> call on SolrInfoMBean with this instead.
> The next step would be to allow more MetricReporters to be defined in 
> solrconfig.xml.  The Metrics library comes with ganglia and graphite 
> reporting modules, and we can add contrib plugins for both of those.
> There's some more general cleanup that could be done around SolrInfoMBean 
> (we've got two plugin handlers at /mbeans and /plugins that basically do the 
> same thing, and the beans themselves have some weirdly inconsistent data on 
> them - getVersion() returns different things for different impls, and 
> getSource() seems pretty useless), but maybe that's for another issue.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org

Reply via email to