《Splunk智能运维实战》——1.4 使用脚本输入

简介:

本节书摘来自华章计算机《Splunk智能运维实战》一书中的第1章,第1.4节,作者 [美]乔史·戴昆(Josh Diakun),保罗R.约翰逊(Paul R. Johnson),德莱克·默克(Derek Mock),译 宫鑫,康宁,刘法宗 ,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

1.4 使用脚本输入

智能运维所需的数据并非全部来自日志文件或网络端口。Splunk也可获取命令或脚本的输出,并将其与其他数据一起索引。

脚本输入是针对较难获取数据的一种有效方法。如果收集第三方提供的命令行程序输出的数据,Splunk可定期运行该命令来索引结果。通常来说,脚本输入常用于从某个源抓取信息,而网络输入则等待数据从某个源不断推送。

本节将介绍如何配置Splunk,使其每隔一段时间执行命令并将输出的数据导入Splunk。

做好准备

要进行本节的操作,需要运行Splunk Enterprise服务器,及本书提供的适用于当前操作环境的输入脚本。如果是Windows系统,使用cp01_scripted_input.bat文件。这个脚本应放至$SPLUNK_HOME/bin/scripts目录。

如何操作

按照下列步骤配置脚本输入。

  1. 登录Splunk服务器。
  2. 从右上角的主启动器,单击“添加数据”按钮。
    screenshot
  3. 在“或选择一个数据源”列表,单击“运行并收集一个脚本的输出”链接。
    screenshot
  4. 出现“添加新”界面,上面有许多需要输入的字段。在“源”部分,输入要运行命令的完整路径,包括任何命令行参数。所有脚本必须置于Splunk bin目录,可放至$SPLUNK_ HOME/bin/scripts或Splunk 应用程序的其他合适的bin目录中。
  5. 在“间隔”字段输入脚本运行的间隔值(用秒表示),默认值为60.0秒。
  6. 在“源类型”部分,可选择预定义的源类型,或选择“手动”并输入需要的值。出于本节的需要,在源类型中选择“手动”,并输入cp01_scripted_input作为源类型的值。
    screenshot

数据将被索引到Splunk的默认索引,也就是主索引。要想改变目标索引,勾选“更多设置”复选框并从下拉菜单中选择所需的索引。

  1. 点击“保存”,在下一个界面,点击“开始搜索”。Splunk现已配置好,可按照设定的间隔,每60秒执行一次我们提供的脚本输入。输入下列命令搜索“全部时间”的脚本输入返回的数据:
    screenshot

工作原理

当添加新的脚本输入时,也就是指示Splunk在后台向inputs.conf文件添加新的配置节。Splunk服务器可以包括一个或多个inputs.conf文件,它们位于$SPLUNK_HOME/etc/system/ local或Splunk 应用程序的local目录。

创建完脚本输入后,Splunk创建了间隔计时器并按照设定的间隔执行指定命令。有一点需要注意,Splunk每次只能运行脚本的一个实例,若脚本因为某种原因被阻塞,Splunk就无法再执行脚本,直到障碍被排除。

从Splunk 4.2版本开始,脚本转入中任何指向stderr(导致错误)的输出都会被收集在splunkd.log文件中,在调试脚本执行情况时这会很有帮助。因为Splunk默认会索引自身的数据,所以可以搜索脚本输入错误并在必要时发出警报。

出于安全考虑,Splunk不会执行先前提到的bin目录以外的脚本。为了突破这一限制,可使用包装器脚本 (比如Linux中的shell脚本或Windows中的批处理文件)来调用机器上的其他脚本。

另参见

screenshot

相关文章
|
18天前
|
机器学习/深度学习 运维 监控
智能监控系统在运维中的应用与优势
传统的运维管理方式在面对日益复杂的IT系统时显得力不从心,智能监控系统的出现为运维工作带来了新的机遇。本文将探讨智能监控系统在运维中的应用与优势,介绍其工作原理以及如何有效地利用智能监控系统提升运维效率和质量。
33 2
|
3月前
|
机器学习/深度学习 人工智能 运维
什么是AIOps智能运维?
AIOps(智能运维)是一种利用人工智能和机器学习技术的软件,用于实时分析和处理业务和运营数据,以提供规范性和预测性答案。它通过收集和汇总大量数据,并使用智能筛选和识别重要事件和模式,帮助团队快速解决问题并避免事件发生。AIOps不依赖于人为指定规则,而是通过机器学习算法自动学习和提炼规则。它可以分析异常告警、故障分析、趋势预测等,并在某些情况下自动解决问题。AIOps的团队包括SRE团队、开发工程师团队和算法工程师团队,他们在AIOps相关工作中扮演不同的角色。
|
4月前
|
运维
电子好书发您分享《应用智能运维实践(试读版)》
电子好书发您分享《应用智能运维实践(试读版)》
63 1
|
4月前
|
运维
电子好书发您分享《应用智能运维实践(试读版)》
电子好书发您分享《应用智能运维实践(试读版)》
49 1
|
29天前
|
机器学习/深度学习 人工智能 运维
《未来智能运维:AI技术的应用与展望》
在当今数字化时代,智能运维正日益成为企业提升效率、降低成本的关键。本文将探讨人工智能技术在运维领域的应用现状与未来发展趋势,展望未来智能运维的发展前景。
46 1
|
22天前
|
运维 监控 Linux
linux脚本自动化运维任务
Linux自动化运维通过脚本提升效率,涵盖服务管理(启停服务、异常恢复)、系统监控(资源警报)、日志管理(清理分析)、备份恢复、补丁更新、自动化部署(如Ansible)、网络管理、定时任务(cron)和故障排查。结合shell、Python及工具,形成高效运维体系。
20 3
|
23天前
|
机器学习/深度学习 存储 人工智能
未来智能运维的发展趋势与挑战
随着信息技术的迅猛发展,智能运维作为关键的技术领域正日益受到重视。本文探讨了未来智能运维的发展趋势和所面临的挑战,从人工智能、自动化运维、数据分析等方面展望了未来智能运维的发展方向,同时也指出了在实践中需要克服的困难和挑战。
33 1
|
25天前
|
机器学习/深度学习 数据采集 运维
《智能监控系统在运维中的应用与优势》
随着技术的发展,智能监控系统在运维领域扮演着越来越重要的角色。本文将探讨智能监控系统在运维中的应用及其带来的优势,揭示其对于提升运维效率和保障系统稳定性的重要意义。
10 0
|
4月前
|
Linux Shell 索引
Python自动化脚本-运维人员宝典第一章 Python脚本概述
在学习本书前,你应该了解一些 Python 编程的基础知识,比如基础语法、变量类型、元组数据类型、列表字典、函数、字符串和方法。在python.org/downloads/上有3.7.2和2.7.15两个版本可供下载。本书中我们将使用3.7这一版本来作为代表示例和包的安装。
235 11
|
30天前
|
机器学习/深度学习 人工智能 运维
现代化运维管理:智能化的未来
随着信息技术的迅猛发展,现代化运维管理正变得日益重要。本文将探讨智能化运维管理的发展趋势,以及如何利用先进技术提升运维效率和质量。