У меня есть приложение springboot 2, и я хочу отображать метрики в AWS Cloudwatch.
Я включил зависимость микрометра от облачных часов в pom.
Параметр Здесь задокументирован для различных метрических систем, но не для облачных часов.
Какие еще конфигурации мне нужно сделать для 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. Вы также можете предоставить собственные учетные данные другим способом, но я этого не пробовал.
Ну, я только пробовал конфигурацию с помощью instanceProfile. Существует множество способов предоставить свои собственные учетные данные, но это выходит далеко за рамки этого SO-вопроса и заслуживает отдельного рассмотрения.
Я пробовал разные решения и, наконец, работал у меня. Теперь в aws cloudwatch отображаются только показатели моего привода, а не специальные показатели, которые я создал с помощью микрометра. (счетчики, датчики). Вы что-нибудь об этом знаете? Спасибо.
Извини нет. Сам я только начал с этой темы и не создавал собственных метрик. Но я вернусь к вам, если доберусь до этого.
Это не работает для меня, я предоставил свои учетные данные aws, используя cloud.aws.credentials.accessKey: cloud.aws.credentials.secretKey: cloud.aws.region.static: