dependencies {
implementation 'org.springframework.boot:spring-boot-starter-actuator'
implementation 'org.springframework.cloud:spring-cloud-starter-aws'
implementation 'io.micrometer:micrometer-registry-cloudwatch'
}
management:
metrics:
use-global-registry: false
export:
cloudwatch:
namespace: Micrometer/test
enable: true
step: 1s
cloud:
aws:
stack:
auto: false
region:
auto: false
static: ap-northeast-1
management:
metrics:
use-global-registry: false
export:
cloudwatch:
namespace: Micrometer/test
enable: true
step: 1s
cloud:
aws:
stack:
auto: false
region:
auto: false
static: ap-northeast-1
management:
metrics:
enable:
process: false
jdbc: false
logback: false
spring: false
tomcat: false
hikaricp: false
jvm: false
system: false
use-global-registry: false
export:
cloudwatch:
namespace: Micrometer/test
enable: true
batch-size: 20
step: 1s
cloud:
aws:
stack:
auto: false
region:
auto: false
static: ap-northeast-1
@ConditionalOnAwsCloudEnvironment
@Component
public class HeapMemoryUsageMetrics {
public HeapMemoryUsageMetrics(MeterRegistry registry) {
Gauge.builder("HeapMemoryUsage", this, HeapMemoryUsageMetrics::invoke)
.tag("InstanceId", EC2MetadataUtils.getInstanceId())
.baseUnit("bytes")
.register(registry);
}
private Long invoke() {
MemoryMXBean memoryMXBean = ManagementFactory.getMemoryMXBean();
return memoryMXBean.getHeapMemoryUsage().getUsed();
}
}
Micrometerでメトリクスを収集してAmazon CloudWatchで可視化
Micrometerでメトリクスを収集してAmazon CloudWatchで可視化

Micrometerでメトリクスを収集してAmazon CloudWatchで可視化