Skip to content

Commit 0413d75

Browse files
authored
Merge pull request #180 from duxet/7.0.0
Upgrade to Elasticsearch 7.0.0
2 parents d52c619 + deb496d commit 0413d75

File tree

6 files changed

+26
-18
lines changed

6 files changed

+26
-18
lines changed

README.md

+9
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,12 @@ It collects all relevant metrics and makes them available to Prometheus via the
2323

2424
## Compatibility matrix
2525

26+
### Version 7.X
27+
28+
| Elasticsearch | Plugin | Release date |
29+
| -------------- | -------------- | ------------ |
30+
| 7.0.0 | 7.0.0.0 | Apr 11, 2019 |
31+
2632
### Version 6.X
2733

2834
| Elasticsearch | Plugin | Release date |
@@ -114,6 +120,9 @@ It collects all relevant metrics and makes them available to Prometheus via the
114120

115121
## Install
116122

123+
- Since Elasticsearch 7.0.0 :
124+
`./bin/elasticsearch-plugin install -b https://distfiles.compuscene.net/elasticsearch/elasticsearch-prometheus-exporter-7.0.0.0.zip`
125+
117126
- Since Elasticsearch 6.0.0 :
118127
`./bin/elasticsearch-plugin install -b https://distfiles.compuscene.net/elasticsearch/elasticsearch-prometheus-exporter-6.7.1.0.zip`
119128

build.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ buildscript {
88
}
99

1010
dependencies {
11-
classpath "org.elasticsearch.gradle:build-tools:6.7.1" // How can we use ${versions.elasticsearch} here ???
11+
classpath "org.elasticsearch.gradle:build-tools:7.0.0" // How can we use ${versions.elasticsearch} here ???
1212
classpath group: 'javax.xml.bind', name: 'jaxb-api', version: '2.3.0'
1313
classpath group: 'com.sun.xml.bind', name: 'jaxb-core', version: '2.3.0'
1414
classpath group: 'com.sun.xml.bind', name: 'jaxb-impl', version: '2.3.0'

gradle.properties

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
group = org.elasticsearch.plugin.prometheus
22

3-
version = 6.7.1.0-SNAPSHOT
3+
version = 7.0.0.0-SNAPSHOT
44

55
pluginName = prometheus-exporter
66
pluginClassname = org.elasticsearch.plugin.prometheus.PrometheusExporterPlugin

src/main/java/org/elasticsearch/action/NodePrometheusMetricsAction.java

+1-8
Original file line numberDiff line numberDiff line change
@@ -16,14 +16,12 @@
1616
*/
1717
package org.elasticsearch.action;
1818

19-
import org.elasticsearch.client.ElasticsearchClient;
2019
import org.elasticsearch.common.io.stream.Writeable;
2120

2221
/**
2322
* Action class for Prometheus Exporter plugin.
2423
*/
25-
public class NodePrometheusMetricsAction extends Action<NodePrometheusMetricsRequest, NodePrometheusMetricsResponse,
26-
NodePrometheusRequestBuilder> {
24+
public class NodePrometheusMetricsAction extends Action<NodePrometheusMetricsResponse> {
2725
public static final NodePrometheusMetricsAction INSTANCE = new NodePrometheusMetricsAction();
2826
public static final String NAME = "cluster:monitor/prometheus/metrics";
2927

@@ -37,11 +35,6 @@ public NodePrometheusMetricsResponse newResponse() {
3735
throw new UnsupportedOperationException("usage of Streamable is to be replaced by Writeable");
3836
}
3937

40-
@Override
41-
public NodePrometheusRequestBuilder newRequestBuilder(ElasticsearchClient client) {
42-
return new NodePrometheusRequestBuilder(client, this);
43-
}
44-
4538
@Override
4639
public Writeable.Reader<NodePrometheusMetricsResponse> getResponseReader() {
4740
return NodePrometheusMetricsResponse::new;

src/main/java/org/elasticsearch/action/TransportNodePrometheusMetricsAction.java

+8-7
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@
1717

1818
package org.elasticsearch.action;
1919

20+
import org.apache.logging.log4j.LogManager;
21+
import org.apache.logging.log4j.Logger;
2022
import org.compuscene.metrics.prometheus.PrometheusSettings;
2123
import org.elasticsearch.ElasticsearchException;
2224
import org.elasticsearch.action.admin.cluster.health.ClusterHealthRequest;
@@ -31,12 +33,11 @@
3133
import org.elasticsearch.action.support.HandledTransportAction;
3234
import org.elasticsearch.client.Client;
3335
import org.elasticsearch.client.Requests;
34-
import org.elasticsearch.cluster.metadata.IndexNameExpressionResolver;
3536
import org.elasticsearch.common.Nullable;
3637
import org.elasticsearch.common.inject.Inject;
3738
import org.elasticsearch.common.settings.ClusterSettings;
3839
import org.elasticsearch.common.settings.Settings;
39-
import org.elasticsearch.threadpool.ThreadPool;
40+
import org.elasticsearch.tasks.Task;
4041
import org.elasticsearch.transport.TransportService;
4142

4243
/**
@@ -52,22 +53,22 @@ public class TransportNodePrometheusMetricsAction extends HandledTransportAction
5253
private final Settings settings;
5354
private final ClusterSettings clusterSettings;
5455
private final PrometheusSettings prometheusSettings;
56+
private final Logger logger = LogManager.getLogger(getClass());
5557

5658
@Inject
57-
public TransportNodePrometheusMetricsAction(Settings settings, ThreadPool threadPool, Client client,
59+
public TransportNodePrometheusMetricsAction(Settings settings, Client client,
5860
TransportService transportService, ActionFilters actionFilters,
59-
IndexNameExpressionResolver indexNameExpressionResolver,
6061
ClusterSettings clusterSettings) {
61-
super(settings, NodePrometheusMetricsAction.NAME, threadPool, transportService, actionFilters,
62-
indexNameExpressionResolver, NodePrometheusMetricsRequest::new);
62+
super(NodePrometheusMetricsAction.NAME, transportService, actionFilters,
63+
NodePrometheusMetricsRequest::new);
6364
this.client = client;
6465
this.settings = settings;
6566
this.clusterSettings = clusterSettings;
6667
this.prometheusSettings = new PrometheusSettings(settings, clusterSettings);
6768
}
6869

6970
@Override
70-
protected void doExecute(NodePrometheusMetricsRequest request, ActionListener<NodePrometheusMetricsResponse> listener) {
71+
protected void doExecute(Task task, NodePrometheusMetricsRequest request, ActionListener<NodePrometheusMetricsResponse> listener) {
7172
new AsyncAction(listener).start();
7273
}
7374

src/main/java/org/elasticsearch/rest/prometheus/RestPrometheusMetricsAction.java

+6-1
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,16 @@
2020
import static org.elasticsearch.action.NodePrometheusMetricsAction.INSTANCE;
2121
import static org.elasticsearch.rest.RestRequest.Method.GET;
2222

23+
import org.apache.logging.log4j.LogManager;
24+
import org.apache.logging.log4j.Logger;
2325
import org.compuscene.metrics.prometheus.PrometheusMetricsCatalog;
2426
import org.compuscene.metrics.prometheus.PrometheusMetricsCollector;
2527
import org.compuscene.metrics.prometheus.PrometheusSettings;
2628
import org.elasticsearch.action.NodePrometheusMetricsRequest;
2729
import org.elasticsearch.action.NodePrometheusMetricsResponse;
2830
import org.elasticsearch.client.node.NodeClient;
2931
import org.elasticsearch.common.inject.Inject;
32+
import org.elasticsearch.common.network.NetworkAddress;
3033
import org.elasticsearch.common.settings.ClusterSettings;
3134
import org.elasticsearch.common.settings.Settings;
3235
import org.elasticsearch.rest.*;
@@ -40,6 +43,7 @@
4043
public class RestPrometheusMetricsAction extends BaseRestHandler {
4144

4245
private final PrometheusSettings prometheusSettings;
46+
private final Logger logger = LogManager.getLogger(getClass());
4347

4448
@Inject
4549
public RestPrometheusMetricsAction(Settings settings, ClusterSettings clusterSettings, RestController controller) {
@@ -58,8 +62,9 @@ public String getName() {
5862
@Override
5963
protected RestChannelConsumer prepareRequest(RestRequest request, NodeClient client) {
6064
if (logger.isTraceEnabled()) {
65+
String remoteAddress = NetworkAddress.format(request.getHttpChannel().getRemoteAddress());
6166
logger.trace(String.format(Locale.ENGLISH, "Received request for Prometheus metrics from %s",
62-
request.getRemoteAddress().toString()));
67+
remoteAddress));
6368
}
6469

6570
NodePrometheusMetricsRequest metricsRequest = new NodePrometheusMetricsRequest();

0 commit comments

Comments
 (0)