mirror of https://github.com/apache/lucene.git
SOLR-9923: Remove solr.http metric group and merge its metrics to solr.node group
This commit is contained in:
parent
7ef6a81846
commit
e5d28848d7
|
@ -201,7 +201,7 @@ New Features
|
|||
|
||||
* SOLR-9725: Substitute properties into JdbcDataSource configuration ( Jamie Jackson, Yuri Sashevsky via Mikhail Khludnev)
|
||||
|
||||
* SOLR-9877: Use instrumented http client and connection pool. (shalin)
|
||||
* SOLR-9877: SOLR-9923: Use instrumented http client and connection pool. (shalin)
|
||||
|
||||
* SOLR-9880: Add Ganglia, Graphite and SLF4J metrics reporters. (ab)
|
||||
|
||||
|
|
|
@ -471,11 +471,11 @@ public class CoreContainer {
|
|||
shardHandlerFactory = ShardHandlerFactory.newInstance(cfg.getShardHandlerFactoryPluginInfo(), loader);
|
||||
if (shardHandlerFactory instanceof SolrMetricProducer) {
|
||||
SolrMetricProducer metricProducer = (SolrMetricProducer) shardHandlerFactory;
|
||||
metricProducer.initializeMetrics(metricManager, SolrInfoMBean.Group.http.toString(), "httpShardHandler");
|
||||
metricProducer.initializeMetrics(metricManager, SolrInfoMBean.Group.node.toString(), "httpShardHandler");
|
||||
}
|
||||
|
||||
updateShardHandler = new UpdateShardHandler(cfg.getUpdateShardHandlerConfig());
|
||||
updateShardHandler.initializeMetrics(metricManager, SolrInfoMBean.Group.http.toString(), "updateShardHandler");
|
||||
updateShardHandler.initializeMetrics(metricManager, SolrInfoMBean.Group.node.toString(), "updateShardHandler");
|
||||
|
||||
solrCores.allocateLazyCores(cfg.getTransientCacheSize(), loader);
|
||||
|
||||
|
@ -507,7 +507,6 @@ public class CoreContainer {
|
|||
metricManager.loadReporters(cfg.getMetricReporterPlugins(), loader, SolrInfoMBean.Group.node);
|
||||
metricManager.loadReporters(cfg.getMetricReporterPlugins(), loader, SolrInfoMBean.Group.jvm);
|
||||
metricManager.loadReporters(cfg.getMetricReporterPlugins(), loader, SolrInfoMBean.Group.jetty);
|
||||
metricManager.loadReporters(cfg.getMetricReporterPlugins(), loader, SolrInfoMBean.Group.http);
|
||||
|
||||
coreConfigService = ConfigSetService.createConfigSetService(cfg, loader, zkSys.zkController);
|
||||
|
||||
|
|
|
@ -32,12 +32,12 @@ public interface SolrInfoMBean {
|
|||
/**
|
||||
* Category of {@link SolrCore} component.
|
||||
*/
|
||||
enum Category { CORE, QUERYHANDLER, UPDATEHANDLER, CACHE, HIGHLIGHTING, QUERYPARSER, SEARCHER, INDEX, DIRECTORY, OTHER }
|
||||
enum Category { CORE, QUERYHANDLER, UPDATEHANDLER, CACHE, HIGHLIGHTING, QUERYPARSER, SEARCHER, INDEX, DIRECTORY, HTTP, OTHER }
|
||||
|
||||
/**
|
||||
* Top-level group of beans for a subsystem.
|
||||
*/
|
||||
enum Group { jvm, jetty, http, node, core }
|
||||
enum Group { jvm, jetty, node, core }
|
||||
|
||||
/**
|
||||
* Simple common usage name, e.g. BasicQueryHandler,
|
||||
|
|
|
@ -35,6 +35,7 @@ import org.apache.solr.common.util.StrUtils;
|
|||
import org.apache.solr.common.util.URLUtil;
|
||||
import org.apache.solr.core.CoreDescriptor;
|
||||
import org.apache.solr.core.PluginInfo;
|
||||
import org.apache.solr.core.SolrInfoMBean;
|
||||
import org.apache.solr.metrics.SolrMetricManager;
|
||||
import org.apache.solr.metrics.SolrMetricProducer;
|
||||
import org.apache.solr.update.UpdateShardHandlerConfig;
|
||||
|
@ -363,10 +364,11 @@ public class HttpShardHandlerFactory extends ShardHandlerFactory implements org.
|
|||
|
||||
@Override
|
||||
public void initializeMetrics(SolrMetricManager manager, String registry, String scope) {
|
||||
clientConnectionManager.initializeMetrics(manager, registry, scope);
|
||||
httpRequestExecutor.initializeMetrics(manager, registry, scope);
|
||||
String expandedScope = SolrMetricManager.mkName(scope, SolrInfoMBean.Category.HTTP.name());
|
||||
clientConnectionManager.initializeMetrics(manager, registry, expandedScope);
|
||||
httpRequestExecutor.initializeMetrics(manager, registry, expandedScope);
|
||||
commExecutor = MetricUtils.instrumentedExecutorService(commExecutor,
|
||||
manager.registry(registry),
|
||||
SolrMetricManager.mkName("httpShardExecutor", scope, "threadPool"));
|
||||
SolrMetricManager.mkName("httpShardExecutor", expandedScope, "threadPool"));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -98,14 +98,15 @@ public class UpdateShardHandler implements SolrMetricProducer, SolrInfoMBean {
|
|||
|
||||
@Override
|
||||
public void initializeMetrics(SolrMetricManager manager, String registry, String scope) {
|
||||
clientConnectionManager.initializeMetrics(manager, registry, scope);
|
||||
httpRequestExecutor.initializeMetrics(manager, registry, scope);
|
||||
String expandedScope = SolrMetricManager.mkName(scope, getCategory().name());
|
||||
clientConnectionManager.initializeMetrics(manager, registry, expandedScope);
|
||||
httpRequestExecutor.initializeMetrics(manager, registry, expandedScope);
|
||||
updateExecutor = new InstrumentedExecutorService(updateExecutor,
|
||||
manager.registry(registry),
|
||||
SolrMetricManager.mkName("updateExecutor", scope, "threadPool"));
|
||||
SolrMetricManager.mkName("updateExecutor", expandedScope, "threadPool"));
|
||||
recoveryExecutor = new InstrumentedExecutorService(recoveryExecutor,
|
||||
manager.registry(registry),
|
||||
SolrMetricManager.mkName("recoveryExecutor", scope, "threadPool"));
|
||||
SolrMetricManager.mkName("recoveryExecutor", expandedScope, "threadPool"));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -115,7 +116,7 @@ public class UpdateShardHandler implements SolrMetricProducer, SolrInfoMBean {
|
|||
|
||||
@Override
|
||||
public Category getCategory() {
|
||||
return null;
|
||||
return Category.HTTP;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -44,7 +44,7 @@ public class InstrumentedHttpRequestExecutor extends HttpRequestExecutor impleme
|
|||
protected String scope;
|
||||
|
||||
private static String methodNameString(HttpRequest request) {
|
||||
return request.getRequestLine().getMethod().toLowerCase(Locale.ROOT) + "-requests";
|
||||
return request.getRequestLine().getMethod().toLowerCase(Locale.ROOT) + ".requests";
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -42,10 +42,8 @@ public class MetricsHandlerTest extends SolrTestCaseJ4 {
|
|||
NamedList values = resp.getValues();
|
||||
assertNotNull(values.get("metrics"));
|
||||
values = (NamedList) values.get("metrics");
|
||||
System.out.println(values);
|
||||
assertNotNull(values.get("solr.jetty"));
|
||||
assertNotNull(values.get("solr.jvm"));
|
||||
assertNotNull(values.get("solr.http"));
|
||||
assertNotNull(values.get("solr.node"));
|
||||
NamedList nl = (NamedList) values.get("solr.core.collection1");
|
||||
assertNotNull(nl);
|
||||
|
@ -100,9 +98,8 @@ public class MetricsHandlerTest extends SolrTestCaseJ4 {
|
|||
values = resp.getValues();
|
||||
assertNotNull(values.get("metrics"));
|
||||
values = (NamedList) values.get("metrics");
|
||||
assertEquals(5, values.size());
|
||||
assertEquals(4, values.size());
|
||||
assertEquals(0, ((NamedList)values.get("solr.jvm")).size());
|
||||
assertEquals(0, ((NamedList)values.get("solr.http")).size());
|
||||
assertEquals(0, ((NamedList)values.get("solr.jetty")).size());
|
||||
assertEquals(0, ((NamedList)values.get("solr.core.collection1")).size());
|
||||
assertEquals(3, ((NamedList)values.get("solr.node")).size());
|
||||
|
|
Loading…
Reference in New Issue