安装LoongCollector后,您还需要了解如何管理LoongCollector的生命周期,运行配置等内容。
LoongCollector常用命令
启动与停止LoongCollector
对采集性能有要求时,可修改启动参数配置文件(ilogtail_config.json)后再启动LoongCollector。
sudo /etc/init.d/loongcollectord start #启动
sudo /etc/init.d/loongcollectord stop #停止
sudo /etc/init.d/loongcollectord restart #重启查看LoongCollector状态
sudo /etc/init.d/loongcollectord status #返回loongcollector is running表示启动成功。查看LoongCollector版本
cat /usr/local/ilogtail/app_info.json #版本信息存储在loongcollector_version字段中。启动参数配置文件(ilogtail_config.json)
文件描述:配置LoongCollector的启动参数,启动参数配置不合理会影响采集性能,配置错误可能导致采集异常问题发生。
文件路径:/usr/local/ilogtail/ilogtail_config.json。
使用场景:日志服务限制了LoongCollector的采集性能,以防消耗过多服务器资源,影响其他服务运行。当LoongCollector采集性能不满足要求时,可通过修改启动参数进行尝试。具体使用场景可参考通过修改配置解决常见采集问题。
文件示例 :
{ "primary_region" : "cn-beijing", // 默认地域,可忽略 "config_servers" : //获取采集配置时的地址 [ "http://logtail.cn-beijing.log.aliyuncs.com" ], "data_servers" : //与日志服务进行数据传输的地址 [ { "region" : "cn-beijing", "endpoint_list": [ "cn-beijing.log.aliyuncs.com" ] } ], "cpu_usage_limit" : 0.4, "mem_usage_limit" : 384, "max_bytes_per_sec" : 20971520, "bytes_per_sec" : 1048576, "buffer_file_num" : 25, "buffer_file_size" : 20971520, "buffer_map_num" : 5 }参数表:下表仅列出需要关注的常用启动参数,请根据需要新增或修改。未列出的参数请保持默认配置。
采集性能配置规划
为防止采集器消耗过多服务器资源,影响其他服务运行,日志服务对采集性能做了限制。当需要提升采集性能时,可修改启动参数。
推荐参数值示例
根据实际经验推荐如下参数配置,适用于普通JSON文件的采集场景。完整正则模式和分隔符模式的性能与JSON模式相近,极简模式性能为JSON模式的5倍。由于数据、规则的复杂度、采集目录和文件的数量都会对CPU和内存消耗带来影响,请参照下述表格并结合实际情况按需调整。
添加或修改/usr/local/ilogtail/ilogtail_config.json中参数取值,并重启LoongCollector使修改生效。不同采集速率下的建议值参考如下:
按表格中的采集速率大于40 MB/s列配置启动参数时,采集性能已接近极限。
参数 | 描述 | 采集速率大于10 MB/s | 采集速率大于20 MB/s | 采集速率大于40 MB/s |
cpu_usage_limit | CPU使用阈值,以单核计算。
0.4表示日志服务将尽可能限制采集器对CPU单核使用不超过40%,超出后LoongCollector自动重启。 该项为软限制,实际占用的CPU可能超过限制值,超限5分钟后将触发熔断保护自动重启。 | 1 | 2 | 4 |
mem_usage_limit | 内存使用阈值。
采集速率、监控目录和文件数量、发送阻塞程度与该参数有关。更多请参见限制说明 该项为软限制,实际占用的内存可能超过限制值,超限5分钟后将触发熔断保护自动重启。 | 1024 | 2048 | 4096 |
process_thread_count | 采集器处理数据的线程数。
单线程可以处理极简模式下24 MB/s的数据写入或完整正则模式12 MB/s的数据写入。默认情况下无需调整该参数取值。 | 2 | 4 | 8 |
send_request_concurrency | 异步并发的个数。
如果写入TPS很高,可以设置更高的异步并发个数。可以按照一个并发支持0.5 MB/s~1 MB/s网络吞吐来计算,实际根据网络延时而定。 | 20 | 40 | 80 |
其他常用配置文件
LoongCollector运行时一系列配置文件与信息记录文件如下:
LoongCollector采集配置文件(user_log_config.json)
描述:文件记录LoongCollector从日志服务获取的采集配置信息,每次采集配置更新时会同步更新该文件。除手动配置AccessKey信息、数据库密码等敏感信息外,不建议修改该文件。
路径:/usr/local/ilogtail/user_log_config.json。
使用场景:可通过查看该文件确认采集配置是否已经下发到服务器。若该文件存在,且内容与日志服务上的采集配置一致,表示采集配置已下发。
AppInfo记录文件(app_info.json)
描述:app_info.json文件记录LoongCollector的启动时间、获取到的IP地址、主机名等信息。该文件仅作记录,任何修改操作均不会生效。
路径:/usr/local/ilogtail/app_info.json。
使用场景:可查看日志服务采集时识别到的服务器ip信息,判断与日志服务控制台中IP型机器组内IP信息是否一致,一般用于解决IP型机器组心跳失败问题。
如果已在服务器的/etc/hosts文件中设置了主机名与IP地址绑定,则自动获取绑定的IP地址。如果没有设置主机名绑定,会自动获取本机的第一块网卡的IP地址。若设置了ilogtail_config.json中的working_ip参数,则以working_ip值作为服务器的IP地址。
LoongCollector运行日志(loongcollector.LOG)
描述:loongcollector.LOG文件记录了LoongCollector的运行日志,日志级别从低到高分别为INFO、WARN和ERROR。
路径:/usr/local/ilogtail/loongcollector.LOG。
使用场景:如果采集异常,请先使用运行情况诊断与监控排查错误,根据日志采集错误类型排查具体的错误类型和LoongCollector运行日志排查问题。
用户ID文件
描述:包含日志采集到的Project所属的阿里云主账号ID信息,文件名即账号ID,无需后缀,用于标识该账号有权限访问、采集这台服务器的日志。
路径:/etc/ilogtail/users/{阿里云账号ID}。
使用场景:只有在采集非本账号ECS、自建服务器、其他云厂商服务器日志时需要配置用户ID。多个账号对同一台服务器进行日志采集时,支持在同一台服务器上创建多个用户ID文件。
用户自定义标识文件
描述:用于配置用户自定义标识,作为用户自定义标识机器组的内容,协助日志服务发现服务器上的LoongCollector并建立心跳。
路径:/etc/ilogtail/user_defined_id。
使用场景:使用用户自定义机器组时需要配置,了解更多信息请参考机器组与采集配置关联指南。
CheckPoint文件
描述:checkpoint机制用于记录日志服务当前采集位置以确保日志完整性。
路径:默认为
/tmp/logtail_checkpoint。使用场景:可参考限制说明修改启动参数文件进行管理。