性能爆表
AnyShare
如何购买
我想先试用
我已是Anyshare 客户
AnyRobot
如何购买
购买 AnyRobot 订阅服务
我已是 AnyRobot 客户
一对一在线咨询
我是 AnyRobot 新客户
一对一在线咨询

爱数博客

全部 AnyBackup AnyShare AnyRobot AnyDATA AnyFabric DIP

脚本日志监控分析,解密跑批任务高效运维之道

2020-11-03 3728 1

       几乎没有任何一种复杂的操作系统,能够在不需要用户介入的情况下仍然稳定正常运行。作为系统管理员,运维人员经常需要定期执行特定的任务,以保障系统稳定运行。例如分析磁盘用量并清理旧文件。不过,将这些繁杂而重复的工作编写为脚本,并通过定时任务来进行调度执行,可以减少工作负担,降低出错的风险。因此,运维工作中的批任务,几乎都会以脚本的形式来运行。
     
<一>在运维工作中,脚本发挥着不可替代的作用。 
      下面是运维工作中一些常见的通过脚本执行的批任务:
      1) 系统巡检:检查业务程序的任务执行情况,各系统资源使用情况;
      2) 版本发布:新版本程序的上传、替换、配置修改、程序重新启动;
      3) 备份管理:定期对指定目录下所有文件进行备份;
      4) 文件传输:扫描特定目录下的文件,并通过ftp/sftp进行上传、下载;
      5) 日志分析:分析web站点日志,分析用户通过何处方式跳转到本站点等业务指标。
       批任务脚本在业务系统运维的方方面面都发挥着重要作用,但由于系统的复杂性,有很多因素可能导致脚本失败。如果没有及时发现,可能会造成更大的后果。
      1) 脚本执行失败,未及时发现
      a) 备份脚本失败:尽管备份脚本的备份策略已经留有一定的安全冗余,但由于脚本连续多次失败未及时发现,在数据丢失时仍然未能成功找回;
      b) 文件传输失败:因为磁盘写满、网络故障等原因,文件传输失败,造成文件积压,影响后续业务的正常进行;
      c) 日志分析:数据库管理员更新的存储程序存在BUG,导致数据库IO延时高,用户访问响应变慢。但由于日志分析脚本运行失败,未能及时发现此问题,站点长时间处于无法正常访问状态,导致客户大量投诉。
      2) 脚本长时间未产生日志,未能发现
      脚本没有产生日志的原因可能有很多,例如,由于脚本修改过程的失误出现语法错误。由于这种情况下没有生成失败日志,因此通过简单的grep命令无法发现这种异常情况。
       3) 事件日志查看方式落后
       由于脚本执行日志分散在系统各处且数量众多,当发现脚本执行失败时,登录脚本执行的主机,通过tail、grep等命令查看事件发生时的日志,这种方式繁琐且效率低效。
      4) 缺乏对全量脚本执行情况的统计分析
      为了了解全量脚本的执行情况,执行失败脚本的分布,需要对脚本的日志进行分析汇总。但由于脚本过于分散,这种方式过于复杂且统计结果的呈现不够直观。
     
<二>AnyRobot跑批任务脚本监控分析解决方案
       1、可管控的Agent,实时采集数据
       1) 通过Web页面将Agent批量发布到主机,指定采集的日志路径;
       2) 脚本在执行过程中,实时产生记录,Agent探测到新增的日志记录,立即同步到AnyRobot。
       2、实时告警

       1) 根据脚本日志的字段格式,创建相应的解析规则;对于接收到的每一条日志记录,AnyRobot根据对应的解析规则进行实时解析;
       2) 当脚本执行失败,错误日志进入系统,AnyRobot实时产生告警记录,并发送邮件提醒运维人员;
       3) 脚本长时间没有产生日志记录,达到设定的时长,例如12小时,触发源端日志未采集告警,发送邮件提醒。
       3、故障分析
       1) 运维人员收到告警提醒,登录AnyRobot平台后,可以通过告警记录的链接直接查看告警日志,并通过告警上下文功能,快速到事件发生时的记录。

告警事件记录
告警日志

     2) 日志搜索引擎,支持全文关键词、字段值检索、逻辑运算符、SPL命令等方式精准查询日志记录。

日志搜索

     4、监控报表
     1) 脚本总数:过去24小时执行过的脚本的数量,如果脚本数量相对于前一天减少,可能是因为有的脚本未成功启动运行;

     2) 执行次数:过去24小时所有脚本执行的次数;
     3) 失败次数:过去24小时所有脚本执行失败的次数;
     4) 执行结果分布:过去24小时所有脚本执行情况的成功、失败占比;
     通过上述4个指标,可以了解整个业务系统脚本的总体情况:

     5)失败时间分布:过去24小时每个时间段脚本执行的成功数、失败数;
     6)执行失败主机分布:过去24小时执行失败脚本的主机分布情况;
     7) 最近启动时间:过去24小时每个脚本的最近一次执行的开始时间,按启动时间由近到远排序,用于查看是否有脚本未按时正常运行;
     8)执行失败记录:过去24小时所有执行日志中报错的记录列表,以便快速查看报错记录;
     9) 上述的所有可视化图表,都集中在一个仪表盘中显示,便于快速了解所有脚本的运行情况。

跑批任务脚本监控分析仪表盘

     10) 仪表盘订阅:通过AnyRobot平台设置计划任务,设置每天定时发送监控报表,可以设置在上班前发送,以便第一时间了解过去一天的系统情况。

    <三>AnyRobot跑批任务监控分析价值
     1、部署灵活,运行稳定的Agent
     1) 支持批量安装、升级、卸载,可以通过Web界面统一管理;

     2) 支持非root权限安装,适用于权限管理严格的业务系统;
     3) 限制Agent的资源使用量,监控采集状态监控,对业务系统无影响。
     2、降低故障发现时间
     1) 基于流处理引擎,实现故障告警秒级响应;

     2) 支持邮件、微信、HTTP转发、Syslog转发等方式,第一时间通知运维人员,有效减少故障发现时间。     
     3、便捷而高效的日志查看方式

    1) 通过告警详情的链接,跳转到执行失败时的日志原文页面,并定位到脚本失败处;

    2) 通过日志上下文功能,查看执行失败前后的日志。
    4、通过可视化图表,统计分析脚本执行的整体情况
    1) 脚本总数、执行次数、失败次数等指标,了解整体脚本的执行是否出现异常;

    2) 脚本失败主机分布、时间分布,确定脚本失败的主要发生位置;
    3) 执行失败记录,用于查看脚本失败的详细列表。
    

点击即可了解更多AnyRobot 实时分析的日志云

请就本文对您的益处进行评级:

相关文章

热门标签

版本发布 在线教学
chat
support
trial
为了给您提供更优质的服务,请您先完善以下信息:
确认提交

扫码关注

爱数技术支持中心公众号

请选择:

请选择咨询类型

AnyShare
AnyBackUp
AnyRobot

扫码关注

爱数技术支持中心公众号

contact us

提交成功!

我们将在 24 小时之内联系你。