服务器ssh实现钉钉机器人告警

 更新时间:2024年07月27日 09:34:41   作者:cupli  
钉钉开放平台机器人可应用消息推送、监控报警等多种场景中,这篇文章主要介绍了服务器ssh实现钉钉机器人告警方法,需要的朋友可以参考下

钉钉开放平台机器人可应用消息推送、监控报警等多种场景中,这篇文章主要介绍了服务器ssh实现钉钉机器人告警方法,需要的朋友可以参考下。

一:本文目的

      通过ssh到服务器并查看指定命令返回的结果,来判断是否发送告警。比如说:我们发版完后,通过查看gitlab的tag是否是选定的tag,来判断本地发版是否成功。

二:结果展示

三:过程概述

1.首先登陆服务器执行命令

2.根据返回的结果来判断,是否符合预期。

3.符合预期或不符合预期事,调用对应的python脚本来发送消息。

4.艾特钉钉群里相关的人员。

四:过程细节

1.在配置jks里配置脚本(涉及gitlab的tag判断和告警)

#!/bin/bash
#此执行shell用于检测发版的结果。
remote_ip="192.168.1.1"
kaihei_api01_gettag_linshi="ssh 172.16.10.201 'cd /data/wwwroot/ && git branch |grep from '"
#登录yunwei-tools服务器执行命令
kahiei_api01_tag=`ssh   root@$remote_ip  $kaihei_api01_gettag_linshi`
kahiei_api01_tag1=`echo $kahiei_api01_tag |awk '{print $NF}' |sed 's/)//g'`
echo "$kahiei_api01_tag1"
echo "业务服务器的tag:$kahiei_api01_tag1  "
echo "本次发版选的Tag:$git_tag"
funcSendMsgToDingdingOk()  {
  NowTime=`date "+%Y-%m-%d %H:%M:%S"`
  #运维钉钉群
  #WebHook='https://oapi.dingtalk.com/robot/send?access_token=xxx'
  curl $WebHook -H 'Content-Type: application/json' -d " {
                   'msgtype': 'text',
                   'text': {
                      'content': '$1 : $2  $3  \n选择版本号:$4   \n服务器版本号:$5   \n时间:  $NowTime  '
                   },
                   'at': { 'atMobiles': [
                            "1593xxx",
                            "191xx"
                         ],
                         'isAtAll': false
                   },
  }"
}
funcSendMsgToDingdingError()  {
  nodename=`hostname`
  nodeip=`hostname -i`
  time=`date '+%Y-%m-%d-%H:%M:%S'`  
  url='https://oapi.dingtalk.com/robot/send?access_token=xxx'
  curl -s  $url \
   -H 'Content-Type: application/json' \
   -d '{
     "msgtype": "markdown",
     "markdown":
    {"title":"运维监控告警",
    "text":"![screenshot](https://images.cnblogs.com/cnblogs_com/blogs/718800/galleries/2294157/o_230330085502_1.png) \n  
**告警信息:** <font color=\"#FF0000\">'${1}-${2}' </font> \n
**报警时间**: <font color=\"#0000FF\">'${time}' </font>\n
**告警详情**: <font color=\"#0000FF\">'${nodename}-${nodeip}-${3}-${4}-${5}'  </font>\n
> 来自脚本的监控--'${0}'
"
         },
                   'at': { 'atMobiles': [
                            "18003xxx",
                            "18217xxx"
                         ],
                         'isAtAll': false
                   },
   }'
}
if [[ $git_tag == $kahiei_api01_tag1 ]];then
     echo " update-gitTag is ok   $git_tag  $kahiei_api01_tag1 . "
     funcSendMsgToDingding 发版成功通知  ${JOB_NAME} kahiei_api01  ${git_tag}  ${kahiei_api01_tag1}
else
     echo " update-gitTag is error   $git_tag  $kahiei_api01_tag1 ."
     funcSendMsgToDingdingError 发版失败开始重试  ${JOB_NAME} kahiei_api01  ${git_tag}  ${kahiei_api01_tag1}
     curl   https://jks.cupli.com/buildByToken/buildWithParameters?"job=$JOB_NAME&token=iamkeyforfaban&git_tag=$git_tag"  
fi 
echo "检查tag完毕 , `date`"
  • 构建 (选择发版时需要的tag并触发判断)

到此这篇关于服务器ssh实现钉钉机器人告警的文章就介绍到这了,更多相关ssh实现钉钉推送内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 服务发现与负载均衡机制Service实例创建

    服务发现与负载均衡机制Service实例创建

    这篇文章主要为大家介绍了服务发现与负载均衡机制Service实例创建有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-03-03
  • Nginx服务器负载均衡及ssl原理、生成ssl密钥对、Nginx配置ssl操作示例

    Nginx服务器负载均衡及ssl原理、生成ssl密钥对、Nginx配置ssl操作示例

    这篇文章通过大量的实例总结了nginx服务器上负载均衡的概念、配置、ssl原理、密钥对生成以及nginx服务器上配置ssl的相关操作实现方法
    2018-05-05
  • Web性能压力测试工具Siege使用教程

    Web性能压力测试工具Siege使用教程

    本文主要介绍了多线程http负载测试和基准测试工具Siege以及Siege的安装以及使用说明,有需要的朋友可以参考下
    2014-11-11
  • CentOS6.9下svn快速安装配置方法

    CentOS6.9下svn快速安装配置方法

    这篇文章主要为大家详细介绍了CentOS6.9下svn快速安装配置方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-04-04
  • git工作区和暂存区_动力节点Java学院整理

    git工作区和暂存区_动力节点Java学院整理

    这篇文章主要介绍了git工作区和暂存区,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08
  • 解决Navicat 连接服务器不成功的问题(Access denied for user 'root'@ '*.*.*.*' (using password: YES))

    解决Navicat 连接服务器不成功的问题(Access denied for user 'root

    这篇文章主要介绍了Navicat 连接服务器不成功(Access denied for user 'root'@ '*.*.*.*' (using password: YES)),出现这种原因一般是服务器的root用户没有开启访问权限,本文给大家分享解决方法,需要的朋友可以参考下
    2022-09-09
  • Ubuntu快速搭建饥荒服务器的详细步骤

    Ubuntu快速搭建饥荒服务器的详细步骤

    《饥荒》是Klei第一次尝试生存题材,受到Minecraft 的影响,这个游戏也是将玩家放置到游戏世界中,并未给予玩家太多的指示以及特定的生存目标,这篇文章主要介绍了Ubuntu快速搭建饥荒服务器的详细步骤,需要的朋友可以参考下
    2024-03-03
  • windows安装OpenSSL的方法小结

    windows安装OpenSSL的方法小结

    openssl是一个强大的安全套接字密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其他目的使用
    2023-09-09
  • 快速分辨清楚 IaaS、PaaS、BaaS和SaaS

    快速分辨清楚 IaaS、PaaS、BaaS和SaaS

    上到BAT的百度云、腾讯云、阿里云,再到各大手机厂商的华为云、OPPO云、联想云,甚至电商里的京东云、苏宁云等等。一时间,仿佛谁家不出一个云服务就不好意思说自己是互联网企业
    2017-06-06
  • 一文带你搞懂什么是正向代理与反向代理

    一文带你搞懂什么是正向代理与反向代理

    这篇文章主要介绍了一文带你搞懂什么是正向代理与反向代理,正向代理是一个位于客户端和目标服务器之间的代理服务器(中间服务器),反向代理是指以代理服务器来接收客户端的请求,然后将请求转发给内部网络上的服务器,结果返回给客户端,需要的朋友可以参考下
    2023-08-08

最新评论