I'm trying to figure out what I should expect to be instrumented with the Java agent (1.16.0) if I'm using a Spring Boot application that is just for a short-lived (less than a minute to run) batch type of job, and therefore, has no servlet container. It does make JDBC calls (via Hibernate), but I don't see anything logged for any sql that is being run?
It is sending data to the APM server and it's getting into Elastic, since I an entry in there for my context.service.name, but no information seems to be showing up there. I see this at the very end of the application run's logs.
2020-05-13 20:59:23.820 [elastic-apm-init-instrumentation-shutdown-hook] INFO co.elastic.apm.agent.impl.ElasticApmTracer - Tracer switched to STOPPED state 2020-05-13 20:59:23.907 [elastic-apm-init-instrumentation-shutdown-hook] INFO co.elastic.apm.agent.report.ApmServerReporter - dropped events because of full queue: 0 2020-05-13 20:59:24.006 [elastic-apm-init-instrumentation-shutdown-hook] INFO co.elastic.apm.agent.report.IntakeV2ReportingEventHandler - Reported events: 0 2020-05-13 20:59:24.007 [elastic-apm-init-instrumentation-shutdown-hook] INFO co.elastic.apm.agent.report.IntakeV2ReportingEventHandler - Dropped events: 0 2020-05-13 20:59:24.008 [elastic-apm-circuit-breaker] INFO co.elastic.apm.agent.impl.circuitbreaker.CircuitBreaker - Stopping the Circuit Breaker thread.
Also, I have to disable this instrumentation, otherwise I get an error like this at the outset: spring-service-name
INFO co.elastic.apm.agent.bci.bytebuddy.ErrorLoggingListener - org.springframework.web.context.support.GenericWebApplicationContext refers to a missing class
My Java agent configuration:
ELASTIC_APM_APPLICATION_PACKAGES: <name of top-level package> ELASTIC_APM_DISABLE_INSTRUMENTATIONS: spring-service-name ELASTIC_APM_SERVER_URLS: http://apm-server-apm-server.logging:8200 ELASTIC_APM_SERVICE_NAME: <appname>