好的,所以我很难找到关于我正在尝试做的任何明确的资源。
目前,我正在使用 AWS CLI 将自定义日志事件发送到 Cloudwatch,并且我将日志组订阅到 ElasticSearch,以便在 Kibana 中进行监控。我正在使用 bash 脚本,并将 JSON 字符串发送到 Cloudwatch。简单的用例,最终拨打这样的电话:
aws logs put-log-events --log-group-name "${groupname}" --log-stream-name "${streamname}" --log-events "[{\"timestamp\":${logtimestamp},\"message\":\"${timestamp} {\\\"metric1\\\":\\\"${value1}\\\",\\\"metric2\\\":\\\"${value2}\\\"}]"
为了可读性,我发送这样的 JSON:
[
{
"timestamp":${logtimestamp},
"message":"${timestamp {\"metric1\":\"${value1}\",\"metric2\":\"${value2}\"}"
}
]
“消息”字段中的序列化 JSON 是 ElasticSearch 订阅获取的内容,用于在 Kibana 中创建图表。这显然不是一个干净的解决方案,所以我想转向 AWS Java SDK。
我很难找到有关如何使用 AWS Java SDK 将日志发送到 Cloudwatch 的权威资源。当 Cloudwatch 文档中的全部内容都是关于“警报”时,我也很困惑——我只想像使用 CLI 一样向 Cloudwatch 发送一些 JSON。
任何指向类似用例的一些资源的指针?