最近负责zabbix监控部署方面的工作,需要完成本地服务端监控远程虚拟机的运行状态(CPU、打开的进程等),与大家分享下我的实现方法。

  (1) 首先,需要实现记录zabbix客户端的进程的批处理:zabbix_task.bat;

  zabbix_task.bat内容如下:

  @echo off

  chcp 65001

  tasklist /v |findstr "%username%" > c:/zabbix_temp.txt  #进程路径根据个人习惯设置

  pause

  (2) 其次,实现实时监控远程的进程的批处理,使用VBS脚本调用脚本1实现定时刷新进程,脚本命名为:zabbix_monitor.vbs

  本地电脑远程创建远程电脑的计划任务程序(当每次登陆时自动运行脚本zabbix_monitor.vbs),进行实时监控电脑进程

  zabbix_monitor.vbs内容如下:

  Set ws = CreateObject("Wscript.shell")

  do
  ws.run left(Wscritp.Scritpfullname,instrrev(wscript.Scriptfullname,"\")-1)&"\zabbix_task.bat",vbhide

  Wscript.sleep 5000

  loop

  (3) 最后,实现过滤筛选zabbix服务端需要监控的进程脚本:zabbix_tasklist.bat

  @echo off

  setlocal enabledelayedexpansion
  chcp 65001
  echo {
  echo "data" :[
  for /f "tokens = 9*" %%i in (c:\zabbix_temp.txt)
  do(
  set "str=%%j"
  set "str=!str:\=\\!"
  if"!str!"=="!str:暂缺=!" if"!str!"=="!str:Wnd=!" if"!str!"=="!str:N/A=!" if"!str!"=="!str:MCI=!" if"!str!"=="!str:dwn=!" if"!str!"=="!str:taskeng=!"   if"!str!"=="!str:KSafeTray=!" if"!str!"=="!str:6EBF21D6BA1F=!" if"!str!"=="!str:jusched=!" if"!str!"=="!str:HwUvPUpgrade=!"                   if"!str!"=="!str:SPES=!" if"!str!"=="!str:Windows Update=!" if"!str!"=="!str:cmd.exe=!" if"!str!"=="!str:SysFader=!"
  echo {"{#TASK_NAME}":"!str!"},
  )
  echo {"{#TASK_NAME}":"NULL"}
  echo]
  echo
  }

 PS:本地电脑访问远程电脑创建计划任务程序,可以使用批处理schtask命令完成访问远程电脑 

  

  

Windows zabbix监控远程进程实现机制的更多相关文章

  1. 利用zabbix监控ogg进程(Linux平台下)

    前段时间生产的一个数据库的ogg进程挂了快半个月才被发现,已经起不来了,只有重新初始化再同步.因此很有必要监控下ogg的进程,这里给大家介绍如何使用zabbix监控oracle的ogg的进程.思路就是 ...

  2. zabbix 监控特定进程

    因为一些server上跑着一些重要程序,须要对它们进行监控,公司用的是zabbix监控,之前都是在zabbix中加入自己定义脚本对特定程序进行监控,近期看了zabbix的官方文档,发现原来强大的zab ...

  3. zabbix监控nginx进程

    确认nginx有没有安装模块 然后在主站点下添加(二级站点) location /NginxStatus { stub_status on; access_log off; allow 127.0.0 ...

  4. zabbix监控httpd进程、添加动作、报警媒介类型

    1.在server_agent端创建脚本 mkdir -p /usr/local/etc/zabbix_scripts vi /usr/local/etc/zabbix_scripts/check_h ...

  5. 利用zabbix监控ogg进程(Windows平台下)

    本文给大家介绍如何监控windows平台下的ogg程序.(注:所有操作都在administrator用户下面进行操作) 监控linux平台下的ogg程序请看:https://www.cnblogs.c ...

  6. zabbix自动发现监控远程端口

    zabbix监控远程服务器端口,simple checks是zabbix用来监控无agent的主机 脚本和模板地址: https://github.com/mikeluwen/tcpmonitor

  7. C# 远程服务器 安装、卸载 Windows 服务,读取远程注册表,关闭杀掉远程进程

    这里安装windows服务我们用sc命令,这里需要远程服务器IP,服务名称.显示名称.描述以及执行文件,安装后需要验证服务是否安装成功,验证方法可以直接调用ServiceController来查询服务 ...

  8. Zabbix添加windows主机监控

    zabbix监控windows主机 1.官网下载zabbix的windows-agent(选择相应版本): https://www.zabbix.com/cn/download_agents 2.将下 ...

  9. jprofiler_监控远程linux服务器的JVM进程(实践)

    几天前写了一篇文章,jprofiler_监控远程linux服务器的tomcat进程(实践),介绍了使用jprofiler怎样监控远程linux的tomcat进程,这两天想了想,除了可以监控tomcat ...

随机推荐

  1. 网络知识学习4---(DNS的作用)

    1.DNS 简介 DNS是域名解析协议 在互联网中通过IP 地址来进行通信.但是IP 地址的表示形式是数字,很难进行记忆(比如116.213.120.232),所以为每个 IP取一个人类更易记忆的域名 ...

  2. Git版本控制管理学习笔记1-介绍

    几乎所有的版本控制工具都是出于同样的目的:开发以及维护开发出来的代码,方便读取代码的历史,记录所有的修改.这里,介绍的是当前在开源社区内非常流行的版本控制工具Git.它是由Linus Torvalds ...

  3. LeetCode: Largest Rectangle in Histogram(直方图最大面积)

    http://blog.csdn.net/abcbc/article/details/8943485 具体的题目描述为: Given n non-negative integers represent ...

  4. android:ellipsize的使用(转)

    EidtText和textview中内容过长的话自动换行,使用android:ellipsize与android:singleine可以解决,使只有一行. EditText不支持marquee 用法如 ...

  5. lua52 C API测试代码

    //这是一篇lua与C++交互的情景测试 #include <lua.hpp> #include <lauxlib.h> #include <lualib.h> # ...

  6. wpf telerik中的book控件

    下载 telerik中的书本控件,仅供学习使用.

  7. 数据结构之KMP算法next数组

    我们要找到一个短字符串(模式串)在另一个长字符串(原始串)中的起始位置,也就是模式匹配,最关键的是找到next数组.最简单的算法就是用双层循环来解决,但是这种算法效率低,kmp算法是针对模式串自身的特 ...

  8. Useful links

    Better JavaScript with ES6 Pt.IPopular Features pt.II A Deep Dive into Classes pt.III Cool Collectio ...

  9. Python中的条件判断和循环

    1.使用elif代替else if,前者是后者的缩写. 2.所以for x in ...循环就是把每个元素代入变量x,然后执行缩进块的语句.   3.Python提供一个range()函数,可以生成一 ...

  10. js-倒计时自动隐藏

    <!doctype html><html><head><meta charset="utf-8"><title>无标题文 ...