Hey @nathan.loding,
Thanks for your response and I greatly appreciate !
- Mount has been done for config with application.yaml
Still the error is the same
2024-03-02 23:00:51.732 [] [main] [] DEBUG
2024-03-02T23:00:51.733935443Z io.camunda.zeebe.broker.exporter - Exporter configured with ElasticsearchExporterConfiguration{url='http://elasticsearch:9200', requestTimeoutMs=30000, index=IndexConfiguration{prefix='zeebe-record', createTemplate=true, command=false, event=true, rejection=false, decision=true, decisionEvaluation=true, decisionRequirements=true, deployment=true, error=true, incident=true, job=true, jobBatch=false, message=true, messageBatch=false, messageSubscription=true, process=true, processInstance=true, processInstanceBatch=false, processInstanceCreation=true, processInstanceMigration=true, processInstanceModification=true, processMessageSubscription=true, variable=true, variableDocument=true, checkpoint=false, timer=true, messageStartEventSubscription=true, processEvent=false, deploymentDistribution=true, escalation=true, signal=true, signalSubscription=true, resourceDeletion=true, commandDistribution=true, form=true, userTask=true, compensationSubscription=true}, bulk=BulkConfiguration{delay=5, size=1, memoryLimit=10485760}, retention=RetentionConfiguration{isEnabled=false, minimumAge=30d, policyName='zeebe-record-retention-policy'}, authentication=AuthenticationConfiguration{Confidential information}}
2024-03-02T23:00:51.775531749Z 2024-03-02 23:00:51.774 [] [main] [] INFO
2024-03-02T23:00:51.775573006Z org.springframework.boot.autoconfigure.logging.ConditionEvaluationReportLogger -
2024-03-02T23:00:51.775578746Z
2024-03-02T23:00:51.775583072Z Error starting ApplicationContext. To display the condition evaluation report re-run your application with 'debug' enabled.
2024-03-02T23:00:51.905113335Z 2024-03-02 23:00:51.874 [] [main] [] ERROR
2024-03-02T23:00:51.905159561Z org.springframework.boot.SpringApplication - Application run failed
2024-03-02T23:00:51.905165648Z java.lang.IllegalStateException: Failed to load exporter with configuration: ExporterCfg{, jarPath='/usr/local/zeebe/lib/zeebe-mongo-exporter-0.0.1-SNAPSHOT.jar', className='com.swisscom.zeebemongoexporter.MongoExporter', args={url=http://localhost:27017/, dbName=zeebe, bulk={delay=5, size=1000}, col={prefix=zeebe-record, createCollections=true, command=false, event=true, rejection=false, deployment=false, error=false, incident=false, job=false, jobBatch=false, message=false, messageSubscription=false, variable=false, variableDocument=false, workflowInstance=true, workflowInstanceCreation=false, workflowInstanceSubscription=false, timers=false}}}
2024-03-02T23:00:51.905171593Z at io.camunda.zeebe.broker.Broker.buildExporterRepository(Broker.java:150) ~[zeebe-broker-8.4.2.jar:8.4.2]
2024-03-02T23:00:51.905176849Z at io.camunda.zeebe.broker.Broker.<init>(Broker.java:71) ~[zeebe-broker-8.4.2.jar:8.4.2]
2024-03-02T23:00:51.905180542Z at io.camunda.zeebe.broker.Broker.<init>(Broker.java:49) ~[zeebe-broker-8.4.2.jar:8.4.2]
2024-03-02T23:00:51.905203213Z at io.camunda.zeebe.broker.StandaloneBroker.run(StandaloneBroker.java:87) ~[camunda-zeebe-8.4.2.jar:8.4.2]
2024-03-02T23:00:51.905207426Z at org.springframework.boot.SpringApplication.lambda$callRunner$5(SpringApplication.java:790) ~[spring-boot-3.2.2.jar:3.2.2]
2024-03-02T23:00:51.905211026Z at org.springframework.util.function.ThrowingConsumer$1.acceptWithException(ThrowingConsumer.java:83) ~[spring-core-6.1.3.jar:6.1.3]
2024-03-02T23:00:51.905214501Z at org.springframework.util.function.ThrowingConsumer.accept(ThrowingConsumer.java:60) ~[spring-core-6.1.3.jar:6.1.3]
2024-03-02T23:00:51.905217891Z at org.springframework.util.function.ThrowingConsumer$1.accept(ThrowingConsumer.java:88) ~[spring-core-6.1.3.jar:6.1.3]
2024-03-02T23:00:51.905221170Z at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:798) ~[spring-boot-3.2.2.jar:3.2.2]
2024-03-02T23:00:51.905224564Z at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:789) ~[spring-boot-3.2.2.jar:3.2.2]
2024-03-02T23:00:51.905228078Z at org.springframework.boot.SpringApplication.lambda$callRunners$3(SpringApplication.java:774) [spring-boot-3.2.2.jar:3.2.2]
2024-03-02T23:00:51.905241553Z at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(Unknown Source) ~[?:?]
2024-03-02T23:00:51.905245973Z at java.base/java.util.stream.SortedOps$SizedRefSortingSink.end(Unknown Source) ~[?:?]
2024-03-02T23:00:51.905249301Z at java.base/java.util.stream.AbstractPipeline.copyInto(Unknown Source) ~[?:?]
2024-03-02T23:00:51.905252645Z at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(Unknown Source) ~[?:?]
2024-03-02T23:00:51.905255815Z at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(Unknown Source) ~[?:?]
2024-03-02T23:00:51.905259055Z at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(Unknown Source) ~[?:?]
2024-03-02T23:00:51.905262571Z at java.base/java.util.stream.AbstractPipeline.evaluate(Unknown Source) ~[?:?]
2024-03-02T23:00:51.905265742Z at java.base/java.util.stream.ReferencePipeline.forEach(Unknown Source) ~[?:?]
2024-03-02T23:00:51.905268984Z at org.springframework.boot.SpringApplication.callRunners(SpringApplication.java:774) [spring-boot-3.2.2.jar:3.2.2]
2024-03-02T23:00:51.905272276Z at org.springframework.boot.SpringApplication.run(SpringApplication.java:341) [spring-boot-3.2.2.jar:3.2.2]
2024-03-02T23:00:51.905275618Z at io.camunda.zeebe.broker.StandaloneBroker.main(StandaloneBroker.java:78) [camunda-zeebe-8.4.2.jar:8.4.2]
2024-03-02T23:00:51.905278901Z Caused by: io.camunda.zeebe.broker.exporter.repo.ExporterLoadException: Cannot load exporter [MongoExporter]: cannot load specified class
2024-03-02T23:00:51.905282122Z at io.camunda.zeebe.broker.exporter.repo.ExporterRepository.load(ExporterRepository.java:83) ~[zeebe-broker-8.4.2.jar:8.4.2]
2024-03-02T23:00:51.905285658Z at io.camunda.zeebe.broker.Broker.buildExporterRepository(Broker.java:148) ~[zeebe-broker-8.4.2.jar:8.4.2]
2024-03-02T23:00:51.905289122Z ... 21 more
2024-03-02T23:00:51.905298983Z Caused by: java.lang.ClassNotFoundException: com.swisscom.zeebemongoexporter.MongoExporter
2024-03-02T23:00:51.905302782Z at java.base/java.net.URLClassLoader.findClass(Unknown Source) ~[?:?]
2024-03-02T23:00:51.905306237Z at java.base/java.lang.ClassLoader.loadClass(Unknown Source) ~[?:?]
2024-03-02T23:00:51.905309431Z at java.base/java.lang.ClassLoader.loadClass(Unknown Source) ~[?:?]
2024-03-02T23:00:51.905312899Z at io.camunda.zeebe.util.jar.ExternalJarClassLoader.loadClass(ExternalJarClassLoader.java:57) ~[zeebe-util-8.4.2.jar:8.4.2]
2024-03-02T23:00:51.905316263Z at io.camunda.zeebe.broker.exporter.repo.ExporterRepository.load(ExporterRepository.java:80) ~[zeebe-broker-8.4.2.jar:8.4.2]
2024-03-02T23:00:51.905320382Z at io.camunda.zeebe.broker.Broker.buildExporterRepository(Broker.java:148) ~[zeebe-broker-8.4.2.jar:8.4.2]
2024-03-02T23:00:51.905323983Z ... 21 more
2024-03-02T23:00:51.912781347Z 2024-03-02 23:00:51.910 [] [main] [] WARN
2024-03-02T23:00:51.912823598Z org.springframework.boot.web.reactive.context.AnnotationConfigReactiveWebServerApplicationContext - Exception thrown from ApplicationListener handling ContextClosedEvent
2024-03-02T23:00:51.912830415Z java.lang.NullPointerException: Cannot invoke "io.camunda.zeebe.broker.Broker.close()" because "this.broker" is null
2024-03-02T23:00:51.912834911Z at io.camunda.zeebe.broker.StandaloneBroker.onApplicationEvent(StandaloneBroker.java:94) ~[camunda-zeebe-8.4.2.jar:8.4.2]
2024-03-02T23:00:51.912839158Z at io.camunda.zeebe.broker.StandaloneBroker.onApplicationEvent(StandaloneBroker.java:34) ~[camunda-zeebe-8.4.2.jar:8.4.2]
2024-03-02T23:00:51.912843126Z at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:178) ~[spring-context-6.1.3.jar:6.1.3]
2024-03-02T23:00:51.912847136Z at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:171) ~[spring-context-6.1.3.jar:6.1.3]
2024-03-02T23:00:51.912850886Z at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:149) ~[spring-context-6.1.3.jar:6.1.3]
2024-03-02T23:00:51.912855137Z at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:451) ~[spring-context-6.1.3.jar:6.1.3]
2024-03-02T23:00:51.912859684Z at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:384) ~[spring-context-6.1.3.jar:6.1.3]
2024-03-02T23:00:51.912863462Z at org.springframework.context.support.AbstractApplicationContext.doClose(AbstractApplicationContext.java:1127) [spring-context-6.1.3.jar:6.1.3]
2024-03-02T23:00:51.912867230Z at org.springframework.boot.web.reactive.context.ReactiveWebServerApplicationContext.doClose(ReactiveWebServerApplicationContext.java:149) [spring-boot-3.2.2.jar:3.2.2]
2024-03-02T23:00:51.912871236Z at org.springframework.context.support.AbstractApplicationContext.close(AbstractApplicationContext.java:1090) [spring-context-6.1.3.jar:6.1.3]
2024-03-02T23:00:51.912891529Z at org.springframework.boot.SpringApplication.handleRunFailure(SpringApplication.java:816) [spring-boot-3.2.2.jar:3.2.2]
2024-03-02T23:00:51.912898524Z at org.springframework.boot.SpringApplication.run(SpringApplication.java:344) [spring-boot-3.2.2.jar:3.2.2]
2024-03-02T23:00:51.912902643Z at io.camunda.zeebe.broker.StandaloneBroker.main(StandaloneBroker.java:78) [camunda-zeebe-8.4.2.jar:8.4.2]
2024-03-02T23:00:51.922204371Z 2024-03-02 23:00:51.921 [] [main] [] INFO
2024-03-02T23:00:51.922259326Z org.springframework.boot.web.embedded.netty.GracefulShutdown - Commencing graceful shutdown. Waiting for active requests to complete
2024-03-02T23:00:51.937348309Z 2024-03-02 23:00:51.934 [] [netty-shutdown] [] INFO
2024-03-02T23:00:51.937404856Z org.springframework.boot.web.embedded.netty.GracefulShutdown - Graceful shutdown complete
Exporter implementation
@SpringBootApplication
@EnableZeebeClient
public class MongoExporter implements Exporter {
public static void main(String[] args) {
SpringApplication.run(MongoExporter.class, args);
System.out.println("Mongodb exporter is running ...");
}
// by default, the bulk request may not be bigger than 100MB
private static final int RECOMMENDED_MAX_BULK_MEMORY_LIMIT = 100 * 1024 * 1024;
private Logger log;
private Controller controller;
private MongoExporterConfiguration configuration;
private ZeebeMongoClient client;
private long lastPosition = -1;
private boolean colsCreated;
@Override
public void configure(Context context) {
log = context.getLogger();
configuration =
context.getConfiguration().instantiate(MongoExporterConfiguration.class);
log.debug("Exporter configured with {}", configuration);
validate(configuration);
context.setFilter(new MongoRecordFilter(configuration));
}
The dependencies, I used
<zeebe-client-java.version>8.4.0</zeebe-client-java.version>
<spring-boot-starter-camunda.version>8.4.0</spring-boot-starter-camunda.version>
<zeebe-exporter-api.version>8.2.3</zeebe-exporter-api.version>
I think mounting the jar is not an issue. I even did mount it exactly the same way as you suggested and I still get the same error.