in archaius2-core/src/main/java/com/netflix/archaius/instrumentation/AccessMonitorUtil.java [88:105]
private AccessMonitorUtil(
Consumer<PropertiesInstrumentationData> dataFlushConsumer,
boolean recordStackTrace,
Set<String> propertiesToTrack) {
this.propertyUsageMapRef = new AtomicReference(new ConcurrentHashMap<>());
this.stackTrace = new ConcurrentHashMap<>();
this.dataFlushConsumer = dataFlushConsumer;
this.recordStackTrace = recordStackTrace;
this.propertiesToTrack = propertiesToTrack;
this.trackedPropertyStackTraces = new ConcurrentHashMap<>();
this.executor = Executors.newSingleThreadScheduledExecutor(
runnable -> {
Thread thread = Executors.defaultThreadFactory().newThread(runnable);
thread.setDaemon(true);
thread.setName(String.format("Archaius-Instrumentation-Flusher-%d", counter.incrementAndGet()));
return thread;
});
}