-
Notifications
You must be signed in to change notification settings - Fork 2.5k
Open
Description
As per README:
Spring Boot registers a lot number of core metrics: JVM, CPU, Tomcat, Logback... The Spring Boot auto-configuration enables the instrumentation of requests handled by Spring MVC. All those three REST controllers OwnerResource, PetResource and VisitResource have been instrumented by the @timed Micrometer annotation at class level.
customers-service application has the following custom metrics enabled:
@timed: petclinic.owner
@timed: petclinic.pet
visits-service application has the following custom metrics enabled:
@timed: petclinic.visit
In reality, nothing is exposed!
[ec2-user@aap spring-petclinic-microservices]$ cat spring-petclinic-customers-service/src/main/resources/application.yml
spring:
application:
name: customers-service
config:
import: optional:configserver:${CONFIG_SERVER_URL:http://localhost:8888/}
---
spring:
config:
activate:
on-profile: docker
import: configserver:http://config-server:8888
[ec2-user@aap spring-petclinic-microservices]$ java -jar ../../jmxterm-1.0.4-uber.jar -l localhost:9010
Delete /home/ec2-user/.jmxterm_history if you encounter error right after launching me.
Welcome to JMX terminal. Type "help" for available commands.
$>beans -d metrics
#IllegalArgumentException: Domain metrics doesn't exist, check your spelling
$>beans
#domain = JMImplementation:
JMImplementation:type=MBeanServerDelegate
#domain = com.netflix.servo:
com.netflix.servo:class=AsyncResolver,id=bootstrap,level=INFO,name=eurekaClient.resolver.endpointsSize,type=GAUGE
com.netflix.servo:class=AsyncResolver,id=bootstrap,level=INFO,name=eurekaClient.resolver.lastLoadTimestamp,type=GAUGE
com.netflix.servo:class=CloudEurekaClient,level=INFO,name=eurekaClient.registration.lastSuccessfulHeartbeatTimePeriod,type=GAUGE
com.netflix.servo:class=CloudEurekaClient,level=INFO,name=eurekaClient.registry.lastSuccessfulRegistryFetchTimePeriod,type=GAUGE
com.netflix.servo:class=CloudEurekaClient,level=INFO,name=eurekaClient.registry.localRegistrySize,type=GAUGE
com.netflix.servo:class=CloudEurekaClient,name=DiscoveryClient_FetchRegistry,statistic=count,type=NORMALIZED,unit=MILLISECONDS
com.netflix.servo:class=CloudEurekaClient,name=DiscoveryClient_FetchRegistry,statistic=max,type=GAUGE,unit=MILLISECONDS
com.netflix.servo:class=CloudEurekaClient,name=DiscoveryClient_FetchRegistry,statistic=totalOfSquares,type=NORMALIZED,unit=MILLISECONDS
com.netflix.servo:class=CloudEurekaClient,name=DiscoveryClient_FetchRegistry,statistic=totalTime,type=NORMALIZED,unit=MILLISECONDS
com.netflix.servo:class=CloudEurekaClient,name=DiscoveryClient_ReconcileHashCodeMismatch,type=COUNTER
com.netflix.servo:class=CloudEurekaClient,name=DiscoveryClient_Reregister,type=COUNTER
com.netflix.servo:class=RetryableEurekaHttpClient,id=query,level=INFO,name=eurekaClient.transport.quarantineSize,type=GAUGE
com.netflix.servo:class=RetryableEurekaHttpClient,id=registration,level=INFO,name=eurekaClient.transport.quarantineSize,type=GAUGE
com.netflix.servo:class=SessionedEurekaHttpClient,id=query,level=INFO,name=eurekaClient.transport.currentSessionDuration,type=GAUGE
com.netflix.servo:class=SessionedEurekaHttpClient,id=registration,level=INFO,name=eurekaClient.transport.currentSessionDuration,type=GAUGE
com.netflix.servo:class=TimedSupervisorTask,id=AsyncResolver,name=rejectedExecutions,type=COUNTER
com.netflix.servo:class=TimedSupervisorTask,id=AsyncResolver,name=success,type=COUNTER
com.netflix.servo:class=TimedSupervisorTask,id=AsyncResolver,name=threadPoolUsed,type=GAUGE
com.netflix.servo:class=TimedSupervisorTask,id=AsyncResolver,name=throwables,type=COUNTER
com.netflix.servo:class=TimedSupervisorTask,id=AsyncResolver,name=timeouts,type=COUNTER
com.netflix.servo:class=TimedSupervisorTask,id=cacheRefresh,name=rejectedExecutions,type=COUNTER
com.netflix.servo:class=TimedSupervisorTask,id=cacheRefresh,name=success,type=COUNTER
com.netflix.servo:class=TimedSupervisorTask,id=cacheRefresh,name=threadPoolUsed,type=GAUGE
com.netflix.servo:class=TimedSupervisorTask,id=cacheRefresh,name=throwables,type=COUNTER
com.netflix.servo:class=TimedSupervisorTask,id=cacheRefresh,name=timeouts,type=COUNTER
com.netflix.servo:class=TimedSupervisorTask,id=heartbeat,name=rejectedExecutions,type=COUNTER
com.netflix.servo:class=TimedSupervisorTask,id=heartbeat,name=success,type=COUNTER
com.netflix.servo:class=TimedSupervisorTask,id=heartbeat,name=threadPoolUsed,type=GAUGE
com.netflix.servo:class=TimedSupervisorTask,id=heartbeat,name=throwables,type=COUNTER
com.netflix.servo:class=TimedSupervisorTask,id=heartbeat,name=timeouts,type=COUNTER
com.netflix.servo:class=org.springframework.cloud.netflix.eureka.CloudEurekaClient,name=eurekaClient.registration.lastHeartbeatSec_00015,type=GAUGE
com.netflix.servo:class=org.springframework.cloud.netflix.eureka.CloudEurekaClient,name=eurekaClient.registration.lastHeartbeatSec_00030,type=GAUGE
com.netflix.servo:class=org.springframework.cloud.netflix.eureka.CloudEurekaClient,name=eurekaClient.registration.lastHeartbeatSec_00060,type=GAUGE
com.netflix.servo:class=org.springframework.cloud.netflix.eureka.CloudEurekaClient,name=eurekaClient.registration.lastHeartbeatSec_00120,type=GAUGE
com.netflix.servo:class=org.springframework.cloud.netflix.eureka.CloudEurekaClient,name=eurekaClient.registration.lastHeartbeatSec_00240,type=GAUGE
com.netflix.servo:class=org.springframework.cloud.netflix.eureka.CloudEurekaClient,name=eurekaClient.registration.lastHeartbeatSec_00480,type=GAUGE
com.netflix.servo:class=org.springframework.cloud.netflix.eureka.CloudEurekaClient,name=eurekaClient.registry.lastUpdateSec_00015,type=GAUGE
com.netflix.servo:class=org.springframework.cloud.netflix.eureka.CloudEurekaClient,name=eurekaClient.registry.lastUpdateSec_00030,type=GAUGE
com.netflix.servo:class=org.springframework.cloud.netflix.eureka.CloudEurekaClient,name=eurekaClient.registry.lastUpdateSec_00060,type=GAUGE
com.netflix.servo:class=org.springframework.cloud.netflix.eureka.CloudEurekaClient,name=eurekaClient.registry.lastUpdateSec_00120,type=GAUGE
com.netflix.servo:class=org.springframework.cloud.netflix.eureka.CloudEurekaClient,name=eurekaClient.registry.lastUpdateSec_00240,type=GAUGE
com.netflix.servo:class=org.springframework.cloud.netflix.eureka.CloudEurekaClient,name=eurekaClient.registry.lastUpdateSec_00480,type=GAUGE
#domain = com.sun.management:
com.sun.management:type=DiagnosticCommand
com.sun.management:type=HotSpotDiagnostic
#domain = java.lang:
java.lang:name=CodeCacheManager,type=MemoryManager
java.lang:name=CodeHeap 'non-nmethods',type=MemoryPool
java.lang:name=CodeHeap 'non-profiled nmethods',type=MemoryPool
java.lang:name=CodeHeap 'profiled nmethods',type=MemoryPool
java.lang:name=Compressed Class Space,type=MemoryPool
java.lang:name=G1 Eden Space,type=MemoryPool
java.lang:name=G1 Old Gen,type=MemoryPool
java.lang:name=G1 Old Generation,type=GarbageCollector
java.lang:name=G1 Survivor Space,type=MemoryPool
java.lang:name=G1 Young Generation,type=GarbageCollector
java.lang:name=Metaspace Manager,type=MemoryManager
java.lang:name=Metaspace,type=MemoryPool
java.lang:type=ClassLoading
java.lang:type=Compilation
java.lang:type=Memory
java.lang:type=OperatingSystem
java.lang:type=Runtime
java.lang:type=Threading
#domain = java.nio:
java.nio:name=direct,type=BufferPool
java.nio:name=mapped - 'non-volatile memory',type=BufferPool
java.nio:name=mapped,type=BufferPool
#domain = java.util.logging:
java.util.logging:type=Logging
#domain = jdk.management.jfr:
jdk.management.jfr:type=FlightRecorder
#domain = org.springframework.boot:
org.springframework.boot:name=Health,type=Endpoint
#domain = org.springframework.cloud.context.environment:
org.springframework.cloud.context.environment:name=environmentManager,type=EnvironmentManager
#domain = org.springframework.cloud.context.properties:
org.springframework.cloud.context.properties:name=configurationPropertiesRebinder,type=ConfigurationPropertiesRebinder
#domain = org.springframework.cloud.context.scope.refresh:
org.springframework.cloud.context.scope.refresh:name=refreshScope,type=RefreshScope
$>
same for vets service...
I suppose nothing is instrumented with MicroMeter ??
Metadata
Metadata
Assignees
Labels
No labels