在不同操作系统中,使用命令行启动 Logstash 的方式略有不同。以下是具体步骤和示例:
1. Linux/macOS 系统
前提条件
- 已安装 Java(版本 8 或 11,Logstash 依赖 Java 运行环境)。
- 已下载并解压 Logstash(或通过包管理器安装)。
启动步骤
-
进入 Logstash 目录:bash
cd /path/to/logstash
例如,如果下载并解压到/opt/logstash-7.17.0
,则执行:bashcd /opt/logstash-7.17.0
-
使用配置文件启动:bash
./bin/logstash -f /path/to/your/config.conf
-f
:指定配置文件路径(如/etc/logstash/conf.d/
目录下的配置文件)。- 示例:使用当前目录下的
logstash.conf
配置文件:bash./bin/logstash -f logstash.conf
-
后台运行(守护进程模式):bash
nohup ./bin/logstash -f /path/to/your/config.conf &
- 使用
nohup
和&
使 Logstash 在后台持续运行。
2. Windows 系统
前提条件
- 已安装 Java(版本 8 或 11)。
- 已下载并解压 Logstash。
启动步骤
-
打开命令提示符(CMD)或 PowerShell:
- 按
Win + R
,输入cmd
或powershell
并回车。
- 按
-
进入 Logstash 目录:powershell
cd C:\path\to\logstash
例如:powershellcd C:\logstash-7.17.0
-
使用配置文件启动:powershell
.\bin\logstash.bat -f C:\path\to\your\config.conf
- 示例:使用当前目录下的
logstash.conf
:powershell.\bin\logstash.bat -f logstash.conf
-
后台运行(可选):
- 可使用第三方工具(如
nssm
)将 Logstash 注册为 Windows 服务。
- 可使用第三方工具(如
3. 常用启动参数
参数 | 说明 |
---|---|
-f |
指定配置文件路径(如-f /etc/logstash/conf.d/input.conf )。 |
-t |
测试配置文件语法是否正确,不启动服务(如./bin/logstash -t -f ... )。 |
--config.test_and_exit |
同上,测试配置后退出。 |
--path.data |
指定数据存储路径(默认LOGSTASH_HOME/data )。 |
--debug |
启用调试模式,输出详细日志。 |
--quiet |
安静模式,减少日志输出。 |
4. 验证启动是否成功
- 查看控制台输出:
- 启动成功后,Logstash 会显示类似以下信息:
plaintext
[INFO ] 2023-05-01T12:00:00.000Z logstash.runner - Logstash started successfully
- 启动成功后,Logstash 会显示类似以下信息:
- 检查监听端口:
- 若配置了 HTTP 输入(如端口
5044
),可使用以下命令验证:bashnetstat -tulpn | grep 5044 # Linux/macOS
powershellGet-NetTCPConnection | Where-Object LocalPort -eq 5044 # Windows
- 若配置了 HTTP 输入(如端口
5. 配置文件示例
假设
logstash.conf
内容如下:
conf
input {
file {
path => "/var/log/syslog"
start_position => "beginning"
}
}
filter {
grok {
match => { "message" => "%{SYSLOGTIMESTAMP:timestamp} %{SYSLOGHOST:host} %{DATA:program}(?:\[%{POSINT:pid}\])?: %{GREEDYDATA:message}" }
}
}
output {
stdout { codec => rubydebug }
elasticsearch {
hosts => ["localhost:9200"]
index => "logstash-%{+YYYY.MM.dd}"
}
}
常见问题
-
Java 版本不兼容:
- 确保 Java 版本为 8 或 11,可通过
java -version
检查。
- 确保 Java 版本为 8 或 11,可通过
-
权限问题:
- Linux 系统中,确保 Logstash 有读取日志文件的权限。
-
配置语法错误:
- 使用
-t
参数测试配置文件:bash./bin/logstash -t -f /path/to/config.conf
- 使用
-
端口被占用:
- 检查并关闭占用相同端口的其他服务。
通过以上步骤,你可以使用命令行启动 Logstash 并开始收集解析日志数据。根据实际需求调整配置文件即可。
文章链接: https://www.mfisp.com/36311.html
文章标题:怎样使用命令行启动Logstash
文章版权:梦飞科技所发布的内容,部分为原创文章,转载请注明来源,网络转载文章如有侵权请联系我们!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。