我正在使用Open Telemetry手动检测发送设备数据。
我正在创建这样的SdkMeterProvider
私有OpenTelemetry initOpenTelemetrySDK(){
Resource resource = Resource.getDefault()
        .merge(Resource.create(Attributes.of(ResourceAttributes.SERVICE_NAME, "MyResource")));
OtlpGrpcMetricExporter otlpGrpcMetricExporter = OtlpGrpcMetricExporter.builder()
        .setEndpoint(getOtelEndPoint())
        .setAggregationTemporalitySelector(AggregationTemporalitySelector.deltaPreferred()).build();
SdkMeterProvider sdkMeterProvider = SdkMeterProvider.builder()
        .registerMetricReader(PeriodicMetricReader.builder(otlpGrpcMetricExporter).build()).setResource(resource)
        //.registerView(InstrumentSelector.builder().setType(InstrumentType.OBSERVABLE_UP_DOWN_COUNTER).build(),
        //      View.builder().setAggregation(Aggregation.defaultAggregation()).build())
        .build();
OpenTelemetrySdk openTelemetrySdk = OpenTelemetrySdk.builder().setMeterProvider(sdkMeterProvider)
        .buildAndRegisterGlobal();
return openTelemetrySdk;
}
同时使用下线发送度量并构建属性。
Meter meter = openTelemetrySdk.meterBuilder("DeviceData").build();
LongCounter counter = meter.counterBuilder(123).build();
counter.add((Long) record.getValue(), attributes);
我在这里面临的问题是,即使在关闭了设备之后,我也可以看到仪表仍在为关闭的设备发送数据。如果我再次重新启动服务器,那么我就不会再看到关闭的设备。有人观察到这个问题吗?请在这里提供任何指示。