Skip to content

Commit 05d6222

Browse files
authored
Cache Monitor: small improvements (#167)
1 parent 9cb39c6 commit 05d6222

6 files changed

Lines changed: 16 additions & 11 deletions

File tree

src/main/java/org/prebid/cache/config/MonitoringConfig.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,11 @@ public CacheMonitorService storageMonitorService(ReactiveRepository<PayloadWrapp
3030

3131
@Bean
3232
public Disposable monitorScheduledPoller(CacheMonitorService cacheMonitorService,
33-
CacheConfig cacheConfig,
34-
@Value("${cache.monitoring.intervalSec}") int intervalSec) {
35-
final Duration startDelay = Duration.ofSeconds(new Random().nextInt(0, cacheConfig.getTimeoutMs()));
33+
@Value("${cache.monitoring.intervalSec}") int intervalSec,
34+
@Value("${cache.monitoring.maxStartDelayJitterSec}") int startJitterSec) {
35+
final Duration startDelay = startJitterSec > 0
36+
? Duration.ofSeconds(new Random().nextInt(0, startJitterSec))
37+
: Duration.ZERO;
3638
return Flux.interval(startDelay, Duration.ofSeconds(intervalSec))
3739
.onBackpressureDrop()
3840
.concatMap(counter -> cacheMonitorService.poll())

src/main/java/org/prebid/cache/listeners/AerospikeReadListener.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,14 @@
1111

1212
@Slf4j
1313
public class AerospikeReadListener implements RecordListener {
14+
1415
private static final String NAME = "cache";
1516
private final MonoSink<String> sink;
16-
private final String recordKeyId;
17+
private final String keyId;
1718

18-
public AerospikeReadListener(MonoSink<String> sink, String recordKeyId) {
19+
public AerospikeReadListener(MonoSink<String> sink, String keyId) {
1920
this.sink = sink;
20-
this.recordKeyId = recordKeyId;
21+
this.keyId = keyId;
2122
}
2223

2324
@Override
@@ -31,7 +32,7 @@ public void onSuccess(Key key, Record record) {
3132

3233
@Override
3334
public void onFailure(AerospikeException exception) {
34-
log.error("Error when reading record with keyId {}", recordKeyId);
35+
log.error("Error reading record with key id {} due to: {}", keyId, exception.getMessage());
3536
sink.error(exception);
3637
}
3738
}

src/main/java/org/prebid/cache/listeners/AerospikeWriteListener.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88

99
@Slf4j
1010
public class AerospikeWriteListener implements WriteListener {
11+
1112
private final MonoSink<String> sink;
1213
private final String keyId;
1314

@@ -23,7 +24,7 @@ public void onSuccess(Key key) {
2324

2425
@Override
2526
public void onFailure(AerospikeException exception) {
26-
log.error("Error when writing record with keyID : {}", keyId);
27+
log.error("Error writing record with key id {} due to: {}", keyId, exception.getMessage());
2728
sink.error(exception);
2829
}
2930
}

src/main/java/org/prebid/cache/metrics/MetricsRecorder.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,6 @@ public MetricsRecorderTimer createRequestTimerForServiceType(final ServiceType s
7979

8080
public void recordEntryLifetime(String bucketName, Duration entryLifetime) {
8181
meterRegistry.timer(MeasurementTag.ENTRY_LIFETIME.getTag().replaceAll(TTL_BUCKET_PLACEHOLDER, bucketName))
82-
.record(Duration.ofSeconds(entryLifetime.getSeconds()));
82+
.record(entryLifetime);
8383
}
8484
}

src/main/java/org/prebid/cache/service/CacheMonitorService.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ private Mono<PayloadWrapper> processExpiryBucket(Long ttl, String bucketName, Pa
6363
return repository.findById(normalizedId)
6464
.switchIfEmpty(Mono.defer(() -> {
6565
final Duration entryLifetime =
66-
Duration.ofMillis(Instant.now().toEpochMilli() - payloadWrapper.getTimestamp());
66+
Duration.between(Instant.ofEpochMilli(payloadWrapper.getTimestamp()), Instant.now());
6767
metricsRecorder.recordEntryLifetime(bucketName, entryLifetime);
6868
return saveNewWrapper(ttl);
6969
}));

src/main/resources/application.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,8 @@ cors:
2222
cache:
2323
monitoring:
2424
enabled: false
25-
intervalSec: 1
25+
intervalSec: 5
26+
maxStartDelayJitterSec: 0
2627
prefix: prebid_
2728
expiry_sec: 300
2829
timeout_ms: 300

0 commit comments

Comments
 (0)