Прежде всего, вам, возможно, придется добавить некоторые дополнительные зависимости. Мне понадобилось следующее:
- org.springframework.boot - пружина-пыльник-пускатель-привод
- org.springframework.cloud - весеннее облако-стартер-aws
- микрометр - микрометр-сердечник
- io.micrometer - микрометр-реестр-cloudwatch
Boot не смог управлять версиями для этих зависимостей, за исключением привода в моем случае, поэтому вам, возможно, придется подобрать для вас правильные версии.
Кроме того, необходимо установить некоторые свойства приложения:
# disable unwanted features to prevent autoconfigure which will produce errors and abort of application startup eventually
# alternatively you can try to configure those features correctly if you intend to use them
cloud.aws.stack.auto=false
# enable micrometer for cloudwatch (only where there is actually access to it)
management.metrics.export.cloudwatch.enabled=true
# set the namespace that will contain the metrics for this application
management.metrics.export.cloudwatch.namespace=test
# set max batch size to the actual maximum (if not a bug in certain versions of micrometer for cloudwatch will send
# batches that are too big)
management.metrics.export.cloudwatch.batchSize=20
Следующим шагом будет AWS. Роль, связанная с вашим экземпляром EC2 (или чем-то еще, что вы используете), должна иметь разрешение CloudWatch:PutMetricData
.
Использование этой конфигурации должно включить CloudWatch-Monitoring для вашего Spring-Boot-Application.
Один из источников, с которыми я столкнулся, заявил, что вы должны использовать:
cloud.aws.credentials.instanceProfile=false
Это предотвратит автоматическое получение Spring Boot учетных данных, необходимых для передачи метрик в CloudWatch. Вы также можете предоставить собственные учетные данные другим способом, но я этого не пробовал.
person
Fencer
schedule
23.10.2019