Pandora支持通过采集客户端获取脚本或命令执行的结果数据。可以通过脚本输入获取从API、其他远程数据界面、以及消息队列来的数据。Pandora以定时任务的形式执行脚本,将脚本执行的结果全部获取则任务结束,并等待下一个定时任务的到来,也可以仅在启动时执行一次。
创建脚本采集任务
创建步骤如下:
-
入口:设置 > 数据采集,点击+创建,在选择数据源页面选择客户端转发采集>执行脚本
-
在分发机器页面,通过筛选条件选择已有机器标签。或者可以暂不安装客户端点击下一步配置数据源,后续在采集任务管理页面点击分发完成分发操作。
-
配置数据源,具体配置如下:
配置 | 说明 |
---|---|
来源类型 | 平台用于区分不同数据格式的重要标识,通过来源类型确定数据的分行方式(将数据流按照切分规则形成独立的事件)、时间戳抽取方式(为每个事件抽取时间信息)等重要信息,不同格式的数据流的分行及时间戳识别方式各有不同,同时来源类型也有助于您进行数据分类搜索。参阅来源类型 |
脚本解释器 | 指定脚本解释器,若不填写则默认使用/bin/bash ,用户可以指定其他脚本解释器包括:/bin/sh ,user/bin/ruby ,user/bin/perl ,user/bin/python 等,默认为空。支持who等常见命令,不支持交互式命令,如top |
命令 | 用户可以填写脚本执行命令,包括脚本路径以及脚本执行参数,脚本命令执行的参数以空格隔开 |
执行频率 | 定时任务触发周期,可以选择每分钟、每5分钟、每15分钟、每30分钟、每1小时、每3小时、每6小时、每24小时,默认为每分钟。也可以输入cron表达式 指定脚本执行的有效时间,此时脚本不会在启动时运行,而是在cron定义的计划时间运行,超出这个时间范围脚本会被强制停止执行。另外如果您需要脚本仅执行一次,可以将该选项置空,脚本仅在每次启动时运行 |
数据处理规则 | 支持配置数据处理规则,可以对数据进行根据正则表达式的过滤或脱敏处理,可添加多个规则 |
预览测试数据源 | 如果分发机器时选择了机器标签,可以通过选择机器点击「获取数据」,点击「解析数据」展示解析后数据效果,便于确定日志分行情况和时间戳提取效果 |
1、如果文件路径太多,数据处理规则可能造成数据预览获取时间较长,可能需要等待较长时间。
2、预览数据获取条数默认为10条,可以调用接口调整数量。
- 完成数据源配置后点击下一步,填写采集任务名称、描述、数据存储仓库等基本信息,点击确认保存,完成脚本采集任务创建。
- 某些特殊情况下,当Pandora验证脚本采集命令中输入的文本包含特殊字符时会进行转义。在验证脚本命令时,Pandora会转义不能出现在路径中的字符,如等号"=" 和分号";"。建议您为使用带参数的命令的脚本化输入编写包装脚本。
- 另外您也可以通过使用 .path 后缀,将脚本采集任务配置为引用位于主机文件系统上任何位置的外部脚本或可执行文件。
脚本存放路径
请将您引用的脚本存放在Pandora文件系统上的以下位置:
$panodora/etc/system/bin
$panodora/bin/scripts
脚本输入示例
示例一
以下示例使用UNIX top命令执行结果作为脚本输入。
- 创建一个shell脚本top.sh,将其存放在路径:$panodora/etc/system/bin下。
$ #!/bin/sh
top -bn 1 # linux only - different OSes have different parameters
- 使脚本可执行。
chmod +x $panodora/etc/system/bin/top.sh
- 测试脚本,该脚本发送一个top输出。
- 创建采集任务,使其每分钟运行一次。
示例二
以下脚本可以获取天气信息。
- 创建一个python脚本get_weather.py,将其存放在路径:$panodora/etc/system/bin下。点击下载脚本
- 创建采集任务,在命令输入框中输入该脚本路径,配置使其每15分钟运行一次。并选择分发机器,预览测试数据。
文档反馈
(如有产品使用问题,请 提交工单)