专栏首页腾讯云监控专栏云监控最佳实践:自定义监控 Nginx 进程存活状态
原创

云监控最佳实践:自定义监控 Nginx 进程存活状态

如何监控部署在云服务器上的服务进程状态?

推荐您使用 云监控-自定义监控 !

目前内测阶段免费使用,无需审核,开通服务即用。诚邀您点击 申请页面 参与内测体验!


上报监控指标

步骤1:准备上报环境

安装 TCCLI 工具:

	pip install tccli

配置 TCCLI 工具:

  • secretId:云 API 密钥 SecretId
  • secretIKey:云 API 密钥 SecretKey
  • region: 云产品地域,可通过 curl http://metadata.tencentyun.com/latest/meta-data/placement/region 获取云服务器所在地域
  • output: 可选参数,请求回包输出格式,支持 json table text 三种格式,默认为 json
	tccli configure set secretId AKIDwLw1234MMfPRle2g9nR2OTI787aBCDP // 您的secretId

	tccli configure set secretKey OxXj7khcV1234dQSSYNABcdCc1LiArFd // 您的secretKey

	tccli configure set region $(curl http://metadata.tencentyun.com/latest/meta-data/placement/region 2>/dev/null)

	tccli configure set output json

更多 TCCLI 安装和配置使用相关文档请参阅 文档中心

步骤2:采集处于 Nginx 进程数量

	ps aux | grep nginx | grep -v grep | wc -l

步骤3:编写 Shell 脚本

	#!/bin/bash


	# 获取云服务器内网IP

	myip=$(curl http://metadata.tencentyun.com/latest/meta-data/local-ipv4 2>>/dev/null)


	while true

	do


	nginx_pro_cnt=$(ps aux | grep nginx | grep -v grep | wc -l)

	metrics=$(cat <<EOF

	[

	  {

	    "MetricName": "nginx_pro_cnt", 

	    "Value": $nginx_pro_cnt

	  }

	]

	EOF

	)


	tccli monitor PutMonitorData --Metrics "$metrics" --AnnounceIp "$myip" --AnnounceTimestamp $(date +%s)


	sleep 60

	done

步骤4:执行 Shell 脚本,完成数据持续上报

将步骤3中的示例保存为 tcp_curr_timewait.sh 后,在当前目录下执行以下命令,即可通过 Shell 脚本在后台进行目标指标的持续上报。

	chmod +x nginx_pro_cnt.sh

	nohup ./nginx_pro_cnt.sh &

查看上报指标

完成监控指标上报后,可以在 云监控-自定义监控 控制台 查看 指标视图

配置告警策略

步骤1:确认用户消息通道已验证,可在 CAM 鉴权 页面查看验证情况

image.png

步骤2:进入自定义监控 指标视图 页面,在指标视图右上角【配置告警】

image.png

更多告警策略配置操作请参阅 文档中心


扫描二维码,关注腾讯云监控公众号

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 云监控最佳实践:自定义监控服务器 TIME_WAIT 连接数

    腾讯云服务器监控 agent 只采集了处于 ESTABLISHED 状态的 TCP 连接数量?

    腾讯云监控团队
  • 云监控视频课程上线啦!~戳我看视频

      ! 进到产品控制台一脸懵圈不知从而下手? 文档太长没有耐心看? 看完文档二脸懵圈不知所以? 用户反馈 “不会用” “看不懂” 讲好技术产品,让小白用户也...

    腾讯云监控团队
  • 云监控新手入门

    01 为什么在腾讯云监控公众号推送了几次后才有这次“新手入门”的文章,故事要从小助手微信号说起... 前一阵云监控开通了小助手微信号(ID:云监控小M)(文...

    腾讯云监控团队
  • 使用工厂模式优化 if/elif/else 代码

    工厂模式不需要详细解释了,具体的可以在 Design Patterns: Elements of Reusable Object-Oriented Softwa...

    哒呵呵
  • 一起学Rust-环境安装

    Rust是一种安全、并发、实用的编程语言,有着惊人的运行速度,能够防止段错误,并保证线程安全,使每个人都能够构建 可靠,高效的软件。

    江湖安得便相忘
  • 使用工厂模式优化 if/elif/else 代码

    工厂模式不需要详细解释了,具体的可以在 Design Patterns: Elements of Reusable Object-Oriented Softwa...

    哒呵呵
  • 记一次内存占用问题的调查过程

    最近在维护一台CentOS服务器的时候,发现内存无端"损失"了许多,free和ps统计的结果相差十几个G,搞的我一度又以为遇到灵异事件了,后来Google了许久...

    程序员小王
  • “通信工程师”到底是干啥的?

    所有服务于这个庞大目标的事业,都可以归为通信事业。移动通信、光纤通信、微波通信、卫星通信、计算机通信,全部都属于通信的一部分。

    鲜枣课堂
  • 10分钟教你深度学习的调参

    深度学习的训练方法可参见我之前的文章深度学习的训练,以下则是调参的手法及典型值。 两类需要调参的参数(parameters) 优化类的参数:学习率(learni...

    linxinzhe
  • 理解LSTM网络(整合)Recurrent Neural Networks长期依赖(Long-Term Dependencies)问题LSTM 网络GRU - Gated Recurrent Unit

    致Great

扫码关注云+社区

领取腾讯云代金券