org.opentripplanner.analyst.cluster.WorkerIdDefiner Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of otp Show documentation
Show all versions of otp Show documentation
The OpenTripPlanner multimodal journey planning system
package org.opentripplanner.analyst.cluster;
import ch.qos.logback.core.PropertyDefinerBase;
/**
* A class that allows the logging framework to access the worker ID; with a custom logback config
* this can be used to print the machine ID with each log message. This is useful if you have multiple
* workers logging to the same log aggregation service.
*
* This does seem like it should be a static class of AnalystWorker, but AnalystWorker needs this
* class loaded to initialize its logger which is a static field, so it would have to be at the top
* of the file, above the logger definition, which is ugly and confusing so we leave it as its own
* bona fide class.
*
* It would seem that Mapped Diagnostic Contexts would be ideal for this purpose, but they are
* thread-scoped, and computation takes place in multiple threads; we need this to be JVM-scoped.
*/
public class WorkerIdDefiner extends PropertyDefinerBase {
@Override public String getPropertyValue() {
return AnalystWorker.machineId;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy