Grafana 系列-统一展示-5-AWS Cloudwatch 仪表板
1.Grafana 系列-统一展示-1-开篇2.Grafana 系列-统一展示-4-AWS Cloudwatch 数据源
3.Grafana 系列-统一展示-5-AWS Cloudwatch 仪表板
4.Grafana系列-统一展示-10-Explore Jaeger系列文章
👍️强烈推荐
强烈推荐使用 GitHub 上的 monitoringartist/grafana-aws-cloudwatch-dashboards 仪表板。该 repo 有一系列 AWS 资源的仪表板,包括但不限于:
- EC2
- EBS
- API GW
- Autoscaling
- Billing
- EKS
- Lambda
- Logs
- RDS
- S3
- ...
并且质量上乘,设计十分精良。
本文以其 AWS EC2 Dashboard (ID: 617) 为例说明。
📝Notes:
前提是你的 IAM Role 或 User 有对应的权限,即 上文 提到的:
"ec2:DescribeTags", "ec2:DescribeInstances", "ec2:DescribeRegions"
和"tag:GetResources"
的相关 Policy.
否则会出现类似Error updating options: Query data error
这样的报错。
相比 AWS Cloudwatch 数据源自带的仪表板,该仪表板优秀的地方在于使用了 ec2_instance_attribute
来查询获取变量。具体如下章介绍。
变量
Region
AWS 最常用的变量:region.
- Name: region
- Type: Query
- Query:
regions()
效果如下:
ec2_instance_attribute 相关变量
通过 ec2_instance_attribute 的查询,我们可以获取到更具有实际意义的 EC2 分组和 hostname, 而不是自带仪表板的一长串的非人记忆的 i-xxxxxxxx
EC2 id.
包括:
instancename
- Name: instancename
- Type: Query
- Query:
ec2_instance_attribute($region, Tags.Name, {})
- Custom all value:
*
如果需要复用 instancename, 可以通过如下方式复用:
instanceid
- Name: instanceid
- Query:
ec2_instance_attribute($region, InstanceId, {"tag:Name": ["$instancename"]})
之后,可以根据 instanceid 查询获取 EC2 的 instance type, 以及 vlume 信息。
instancetype
- Name: instancetype
- Query:
ec2_instance_attribute($region,InstanceType, {"instance-id": ["$instanceid"]})
volumeid
- Name: volumeid
- Query:
ebs_volume_ids($region, $instanceid)
最终效果如下:
而关于详细完整的 ec2_instance_attribute
用法,可以参考这篇文档:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)