目前我有个需求,想要跑脚本统计服务器上运行的非系统进程的列表,上报到ES。希望能达到的查询目标有几个:
1.上报的信息有进程名称(例如crond),进程cmd(例如/usr/sbin/crond -n)
2.可以比较方便地看出一台服务器上运行了哪些进程,和详细的进程cmd信息
3.可以查看存在指定进程的服务器列表
4.希望能在查询条件里,给个进程列表作为排除项,例如给个列表a,b,c,d,属于每台服务器都有的,如果上报的信息只有这4个进程的,我认为是空闲服务器。希望a)显示时排除掉这4个进程信息,b)显示出除这4个进程外还有其他进程的服务器
目前我是计划,如果有a,b,c这3个进程,上报信息里有这些字段
hostip: 1.1.1.1
proc_list: a,b,c
a: a-cmd
b: b-cmd
c: c-cmd
查询时
1、2两点比较好实现,3也可以用_exists_:a选出带有a这个进程名称字段的记录
现在问题是4不太清楚在我现有的格式下是否有办法查询到,如果没有的话怎样设计可以达到目标,希望有人能给帮忙指点下
1.上报的信息有进程名称(例如crond),进程cmd(例如/usr/sbin/crond -n)
2.可以比较方便地看出一台服务器上运行了哪些进程,和详细的进程cmd信息
3.可以查看存在指定进程的服务器列表
4.希望能在查询条件里,给个进程列表作为排除项,例如给个列表a,b,c,d,属于每台服务器都有的,如果上报的信息只有这4个进程的,我认为是空闲服务器。希望a)显示时排除掉这4个进程信息,b)显示出除这4个进程外还有其他进程的服务器
目前我是计划,如果有a,b,c这3个进程,上报信息里有这些字段
hostip: 1.1.1.1
proc_list: a,b,c
a: a-cmd
b: b-cmd
c: c-cmd
查询时
1、2两点比较好实现,3也可以用_exists_:a选出带有a这个进程名称字段的记录
现在问题是4不太清楚在我现有的格式下是否有办法查询到,如果没有的话怎样设计可以达到目标,希望有人能给帮忙指点下
5 个回复
God_lockin
赞同来自:
must_not:
terms: [a,b,c,d]
这样写dsl不能实现么?
或者
你在数据采集的时候直接 top | grep -v a | grep -v b ....呢?
wangxinrong
赞同来自:
比如输入某个查询条件后,proc_list:a,b,c,d的就不显示,proc_list:a,b,c,d,e,f的就显示出来。
God_lockin
赞同来自:
wangxinrong
赞同来自:
比如根据abc,或者是abcd,或者是其他的组合来筛选
God_lockin
赞同来自: