You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何查询Splunk活跃用户及其创建的报表、仪表盘与用例?

获取Splunk活跃用户及他们创建的报表、仪表盘与用例

你当前的查询仅能获取用户基础信息,要关联用户创建的各类对象,需要结合Splunk的多个REST端点,通过用户ID(owner字段)进行关联。以下是完整的实现方案:

完整查询语句

| rest /services/authentication/users splunk_server=local 
| fields title roles realname 
| rename title as userName, realname as Name 
| eval 类型="用户基础信息"
| append [
    | rest /services/saved/searches splunk_server=local 
    | fields title owner 
    | rename title as "对象名称", owner as userName 
    | eval 类型="报表/已保存搜索"
]
| append [
    | rest /services/data/ui/views splunk_server=local 
    | fields title owner 
    | rename title as "对象名称", owner as userName 
    | eval 类型="仪表盘"
]
| append [
    | rest /services/alerts/alerts splunk_server=local 
    | fields title owner 
    | rename title as "对象名称", owner as userName 
    | eval 类型="告警/用例"
]
| sort userName, 类型

关键说明

  • 第一个rest块拉取本地Splunk实例的用户列表,包含用户名、真实姓名和角色信息
  • 后续append块分别获取报表/已保存搜索、仪表盘、告警/用例三类对象,通过userName(对应对象的owner字段)与用户信息关联
  • 新增类型字段用于区分记录类型,方便快速筛选不同内容

可选优化

  1. 筛选活跃用户:如果只需要最近有登录行为的用户,可以添加登录时间过滤:
    | rest /services/authentication/users splunk_server=local 
    | fields title roles realname last_login 
    | rename title as userName, realname as Name 
    | where last_login > relative_time(now(), "-30d@d")  // 保留30天内登录过的用户
    | eval 类型="用户基础信息"
    | append [...]  // 追加后续对象查询块
    
  2. 扩展字段:根据需求可以添加更多字段,比如报表的描述、仪表盘的创建时间等,只需调整对应rest命令中的fields参数即可。

内容的提问来源于stack exchange,提问作者Avanti07

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 10:22:08