Skip to content
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
59cfd29
Add ESQL telemetry collection
smalyshev Nov 21, 2024
095f342
Move object name out of CCSTelemetrySnapshot
smalyshev Nov 21, 2024
7233eda
Add esql telemetry to stats output
smalyshev Nov 21, 2024
4b2882f
Update docs/changelog/117282.yaml
smalyshev Nov 21, 2024
bbf6dca
Spotless
smalyshev Nov 22, 2024
f193a4d
Add wrappings to capture more errors
smalyshev Nov 22, 2024
5137537
Add test (more to come)
smalyshev Nov 26, 2024
20f91c5
Merge branch 'main' into esql-telemetry
smalyshev Dec 12, 2024
5a84912
Add comment
smalyshev Dec 12, 2024
9d42179
Fix test
smalyshev Dec 12, 2024
fd812df
Merge branch 'main' into esql-telemetry
smalyshev Dec 13, 2024
b12c8a3
More tests
smalyshev Dec 13, 2024
72bdb43
refactor test
smalyshev Dec 14, 2024
a4e9f01
Unit tests
smalyshev Dec 17, 2024
1634ab4
Merge branch 'main' into esql-telemetry
smalyshev Dec 23, 2024
02f2c7f
More tests for telemetry
smalyshev Dec 23, 2024
5bd9438
More tests
smalyshev Dec 23, 2024
550107e
Update changelog
smalyshev Dec 23, 2024
7cd62b0
Update docs
smalyshev Dec 23, 2024
fce04d5
Add REST YAML test
smalyshev Dec 23, 2024
f1e7ed8
Merge branch 'main' into esql-telemetry
smalyshev Dec 23, 2024
7ea40d8
fix test
smalyshev Dec 23, 2024
402b9a6
Move REST test
smalyshev Dec 26, 2024
59ccda8
Merge branch 'main' into esql-telemetry
smalyshev Dec 26, 2024
58a72e1
Merge branch 'main' into esql-telemetry
smalyshev Dec 26, 2024
8ea56da
Merge branch 'main' into esql-telemetry
smalyshev Dec 27, 2024
0ac116e
Pull feedback
smalyshev Dec 27, 2024
ef59b3d
Add capabilities check for rest test
smalyshev Dec 27, 2024
d96401e
Update docs/changelog/119474.yaml
smalyshev Jan 2, 2025
c2f6932
Update 119474.yaml
smalyshev Jan 2, 2025
11afa6c
Delete docs/changelog/117282.yaml
smalyshev Jan 2, 2025
5c10594
Update docs/reference/cluster/stats.asciidoc
smalyshev Jan 2, 2025
537267a
Pull feedback
smalyshev Jan 2, 2025
be9e6ae
Merge branch 'main' into esql-telemetry
smalyshev Jan 2, 2025
4bfb1c7
Update docs/reference/cluster/stats.asciidoc
smalyshev Jan 2, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/reference/cluster/stats.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -1396,7 +1396,7 @@ as a human-readable string.


`_search`:::
(object) Contains the information about the <<modules-cross-cluster-search, {ccs}>> usage in the cluster.
(object) Contains the information about the <<modules-cross-cluster-search, {ccs}>> usage.
+
.Properties of `_search`
[%collapsible%open]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -146,7 +146,9 @@ static TransportVersion def(int id) {
public static final TransportVersion ERROR_TRACE_IN_TRANSPORT_HEADER = def(8_811_00_0);
public static final TransportVersion FAILURE_STORE_ENABLED_BY_CLUSTER_SETTING = def(8_812_00_0);
public static final TransportVersion SIMULATE_IGNORED_FIELDS = def(8_813_00_0);
public static final TransportVersion ESQL_CCS_TELEMETRY_STATS = def(8_814_00_0);
public static final TransportVersion TRANSFORMS_UPGRADE_MODE = def(8_814_00_0);
public static final TransportVersion NODE_SHUTDOWN_EPHEMERAL_ID_ADDED = def(8_815_00_0);
public static final TransportVersion ESQL_CCS_TELEMETRY_STATS = def(8_816_00_0);

/*
* STOP! READ THIS FIRST! No, really,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -108,9 +108,13 @@ public String getName() {
private final Map<String, LongAdder> clientCounts;
private final Map<String, PerClusterCCSTelemetry> byRemoteCluster;
// Should we calculate separate metrics per MRT?
private boolean useMRT = true;
private final boolean useMRT;

public CCSUsageTelemetry() {
this(true);
}

public CCSUsageTelemetry(boolean useMRT) {
this.byRemoteCluster = new ConcurrentHashMap<>();
totalCount = new LongAdder();
successCount = new LongAdder();
Expand All @@ -122,10 +126,6 @@ public CCSUsageTelemetry() {
skippedRemotes = new LongAdder();
featureCounts = new ConcurrentHashMap<>();
clientCounts = new ConcurrentHashMap<>();
}

public CCSUsageTelemetry(boolean useMRT) {
this();
this.useMRT = useMRT;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,8 @@ public class ClusterStatsNodeResponse extends BaseNodeResponse {
private final ClusterHealthStatus clusterStatus;
private final SearchUsageStats searchUsageStats;
private final RepositoryUsageStats repositoryUsageStats;
private final CCSTelemetrySnapshot ccsMetrics;
private final CCSTelemetrySnapshot esqlMetrics;
private final CCSTelemetrySnapshot searchCcsMetrics;
private final CCSTelemetrySnapshot esqlCcsMetrics;

public ClusterStatsNodeResponse(StreamInput in) throws IOException {
super(in);
Expand All @@ -47,15 +47,15 @@ public ClusterStatsNodeResponse(StreamInput in) throws IOException {
}
if (in.getTransportVersion().onOrAfter(TransportVersions.V_8_16_0)) {
repositoryUsageStats = RepositoryUsageStats.readFrom(in);
ccsMetrics = new CCSTelemetrySnapshot(in);
searchCcsMetrics = new CCSTelemetrySnapshot(in);
} else {
repositoryUsageStats = RepositoryUsageStats.EMPTY;
ccsMetrics = new CCSTelemetrySnapshot();
searchCcsMetrics = new CCSTelemetrySnapshot();
}
if (in.getTransportVersion().onOrAfter(TransportVersions.ESQL_CCS_TELEMETRY_STATS)) {
esqlMetrics = new CCSTelemetrySnapshot(in);
esqlCcsMetrics = new CCSTelemetrySnapshot(in);
} else {
esqlMetrics = new CCSTelemetrySnapshot();
esqlCcsMetrics = new CCSTelemetrySnapshot();
}
}

Expand All @@ -77,8 +77,8 @@ public ClusterStatsNodeResponse(
this.clusterStatus = clusterStatus;
this.searchUsageStats = Objects.requireNonNull(searchUsageStats);
this.repositoryUsageStats = Objects.requireNonNull(repositoryUsageStats);
this.ccsMetrics = ccsTelemetrySnapshot;
this.esqlMetrics = esqlTelemetrySnapshot;
this.searchCcsMetrics = ccsTelemetrySnapshot;
this.esqlCcsMetrics = esqlTelemetrySnapshot;
}

public NodeInfo nodeInfo() {
Expand Down Expand Up @@ -109,12 +109,12 @@ public RepositoryUsageStats repositoryUsageStats() {
return repositoryUsageStats;
}

public CCSTelemetrySnapshot getCcsMetrics() {
return ccsMetrics;
public CCSTelemetrySnapshot getSearchCcsMetrics() {
return searchCcsMetrics;
}

public CCSTelemetrySnapshot getEsqlMetrics() {
return esqlMetrics;
public CCSTelemetrySnapshot getEsqlCcsMetrics() {
return esqlCcsMetrics;
}

@Override
Expand All @@ -129,10 +129,10 @@ public void writeTo(StreamOutput out) throws IOException {
}
if (out.getTransportVersion().onOrAfter(TransportVersions.V_8_16_0)) {
repositoryUsageStats.writeTo(out);
ccsMetrics.writeTo(out);
searchCcsMetrics.writeTo(out);
} // else just drop these stats, ok for bwc
if (out.getTransportVersion().onOrAfter(TransportVersions.ESQL_CCS_TELEMETRY_STATS)) {
esqlMetrics.writeTo(out);
esqlCcsMetrics.writeTo(out);
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -72,8 +72,8 @@ public ClusterStatsResponse(
}
}
nodes.forEach(node -> {
ccsMetrics.add(node.getCcsMetrics());
esqlMetrics.add(node.getEsqlMetrics());
ccsMetrics.add(node.getSearchCcsMetrics());
esqlMetrics.add(node.getEsqlCcsMetrics());
});
this.status = status;
this.clusterSnapshotStats = clusterSnapshotStats;
Expand Down