как получать / отправлять метрики в облачных часах с помощью клиентского golang

Я пишу подписчика (потребителя) Kafka (MSK) с помощью GO (golang) и хочу добавить такие показатели, как количество использованных сообщений, количество ошибок и т. Д., В метрики Cloudwatch.

Прямая передача данных с помощью методов AWS-SDK PutMetricData () замедляет работу функции.


person Kewal Agarwal    schedule 24.05.2020    source источник


Ответы (1)


Если вы часто публикуете отдельные метрические данные, это может вас замедлить. В документации AWS предлагается решение использовать статистический наборы:

Вы можете агрегировать свои данные перед публикацией в CloudWatch. Когда у вас есть несколько точек данных в минуту, агрегирование данных сводит к минимуму количество обращений к put-metric-data.

Это верно для любого языка программирования, будь то Go или Java. Медлительность обычно возникает из-за частого вызова внешнего API, а не из-за особенностей языка.

person Marcin    schedule 24.05.2020
comment
Привет, Марчин, это правда о вызове внешнего API, но я ищу что-то вроде исполнительного механизма в java, который помогает собирать метрики и отправлять их в cloudwatch. Есть ли у нас такие клиенты для GOlang? - person Kewal Agarwal; 25.05.2020
comment
@KewalAgarwal Мне не известен такой инструмент. Это не то, что предоставляет AWS SDK. Для этого вам придется либо найти какое-то стороннее решение, либо реализовать свое собственное. - person Marcin; 25.05.2020