Interface Metrics
- All Known Implementing Classes:
MetricsImpl
public interface Metrics
Client interface for the Equinix Fabric Metrics API (
POST /fabric/v4/metrics/search).
It replaces the per-asset GET /{asset}/{id}/metrics and the /ports/{id}/stats and
/connections/{id}/stats statistics endpoints, which spec 4.34.0 deprecates and this SDK
no longer calls.
The search requires exactly one /subject and at least one /name
(live-verified 2026-11-11). Build the filter with MetricQuery, or use the typed helpers.
- Author:
- ianjones
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionforConnection(String connectionUuid, LocalDateTime fromDateTime, LocalDateTime toDateTime, String... names) Returns every page of the named metrics of one connection over a time range.forMetro(String metroCode, LocalDateTime fromDateTime, LocalDateTime toDateTime, String... names) Returns every page of the named metrics of one metro over a time range.forPort(String portUuid, LocalDateTime fromDateTime, LocalDateTime toDateTime, String... names) Returns every page of the named metrics of one port over a time range.getMetricsByName(String name, String value) Retrieves metrics by wildcard metric name (GET /fabric/v4/metrics).search(FilterPropertyList filter, SortPropertyList sort) Searches metrics with a hand-built filter.search(MetricQuery query) Searches metrics with a filter built by aMetricQuery.
-
Method Details
-
search
Searches metrics with a filter built by aMetricQuery.- Parameters:
query- the query (one subject, at least one metric name)- Returns:
- a paginated, filtered list of matching metrics
-
search
Searches metrics with a hand-built filter.- Parameters:
filter- the filter; it must contain one/subjectand a/nameexpressionsort- the sort criteria, ornull- Returns:
- a paginated, filtered list of matching metrics
- Throws:
IllegalArgumentException- when the filter lacks the required expressions
-
forConnection
List<Metric> forConnection(String connectionUuid, LocalDateTime fromDateTime, LocalDateTime toDateTime, String... names) Returns every page of the named metrics of one connection over a time range.- Parameters:
connectionUuid- the connection uuidfromDateTime- start of the range, UTC wall clocktoDateTime- end of the range, UTC wall clocknames- the metric names, for exampleequinix.fabric.connection.bandwidth_tx.usage- Returns:
- the metrics
-
forPort
List<Metric> forPort(String portUuid, LocalDateTime fromDateTime, LocalDateTime toDateTime, String... names) Returns every page of the named metrics of one port over a time range.- Parameters:
portUuid- the port uuidfromDateTime- start of the range, UTC wall clocktoDateTime- end of the range, UTC wall clocknames- the metric names, for exampleequinix.fabric.port.bandwidth_rx.usage- Returns:
- the metrics
-
forMetro
List<Metric> forMetro(String metroCode, LocalDateTime fromDateTime, LocalDateTime toDateTime, String... names) Returns every page of the named metrics of one metro over a time range.- Parameters:
metroCode- the metro code, for exampleSVfromDateTime- start of the range, UTC wall clocktoDateTime- end of the range, UTC wall clocknames- the metric names, for exampleequinix.fabric.metro.sv_dc.latency- Returns:
- the metrics
-
getMetricsByName
Retrieves metrics by wildcard metric name (GET /fabric/v4/metrics). Only the wildcard metro metric types are supported (for exampleequinix.fabric.metro.*.latencyorequinix.fabric.metro.*.jitter_avg). This endpoint does not support time-range filtering.- Parameters:
name- the wildcard metric name (required)value- which value to retrieve (for examplelast; required)- Returns:
- the list of matching metrics
-