Logtail运行时依赖一系列的配置文件并产生部分信息记录文件,本文档介绍常见文件的基本信息及路径。
启动参数配置文件(ilogtail_config.json)
- 该文件必须为合法JSON,否则无法启动Logtail。
- 修改该文件后,必须重启Logtail才能生效。具体操作,请参见重启Logtail。
- 修改Logtail的运行参数。
- 检验安装命令是否正确。
ilogtail_config.json文件中的
config_server_address
参数和data_server_list
参数的值取决于安装时选择的安装命令,如果其中的地域和日志服务所在地域不一致或地址无法联通,说明安装时选择了错误的命令。这时Logtail无法正常采集日志,需重新安装。
- 文件路径
- Linux:/usr/local/ilogtail/ilogtail_config.json。
- Windows:
- 64位:C:\Program Files (x86)\Alibaba\Logtail\ilogtail_config.json。
- 32位:C:\Program Files\Alibaba\Logtail\ilogtail_config.json。
说明 Windows 64位操作系统支持运行32/64位应用程序,但是出于兼容性考虑,在Windows 64位操作系统上,Windows会使用单独的x86目录来存放32位应用程序。Windows版本的Logtail是32位程序,所以在64位操作系统上的安装目录为Program Files (x86)。如果日志服务推出64位的Windows版本Logtail,会自动安装到Program Files目录下。
- 容器:该文件存储在Logtail容器中,文件路径配置在Logtail容器的环境变量ALIYUN_LOGTAIL_CONFIG中,您可通过docker inspect ${logtail_container_name} | grep ALIYUN_LOGTAIL_CONFIG命令查看。例如:/etc/ilogtail/conf/cn-hangzhou/ilogtail_config.json。
- 文件示例
$cat /usr/local/ilogtail/ilogtail_config.json { "config_server_address" : "http://logtail.cn-hangzhou-intranet.log.aliyuncs.com", "data_server_list" : [ { "cluster" : "cn-hangzhou", "endpoint" : "cn-hangzhou-intranet.log.aliyuncs.com" } ], "cpu_usage_limit" : 0.4, "mem_usage_limit" : 100, "max_bytes_per_sec" : 2097152, "process_thread_count" : 1, "send_request_concurrency" : 4, "streamlog_open" : false }
用户标识配置文件
用户标识配置文件中包含阿里云主账号的ID信息,用于标识这台服务器有权限被该账号访问、采集日志,详情请参见配置用户标识。
- 在采集非本账号ECS、自建IDC、其他云厂商服务器日志时需要配置用户标识。
- 用户标识配置文件中必须配置阿里云账号(主账号)ID,不支持RAM用户。
- 用户标识配置文件只需配置文件名,无需配置文件后缀。
- 一台服务器上可配置多个用户标识,Logtail容器中仅支持配置一个用户标识。
- 文件路径
- Linux:/etc/ilogtail/users/。
- Windows:C:\LogtailData\users\。
- 容器:用户标识保存在Logtail容器的环境变量ALIYUN_LOGTAIL_USER_ID中,您可通过docker inspect ${logtail_container_name} | grep ALIYUN_LOGTAIL_USER_ID命令查看。
- 文件示例
$ls /etc/ilogtail/users/ **************** *****************
用户自定义标识文件(user_defined_id)
user_defined_id文件用于配置用户自定义标识,详情请参见创建用户自定义标识机器组。
- 文件路径
- Linux:/etc/ilogtail/user_defined_id。
- Windows:C:\LogtailData\user_defined_id。
- 容器:用户自定义标识配置在Logtail容器的环境变量ALIYUN_LOGTAIL_USER_DEFINED_ID中,可通过docker inspect ${logtail_container_name} | grep ALIYUN_LOGTAIL_USER_DEFINED_ID命令查看。
- 文件示例
$cat /etc/ilogtail/user_defined_id aliyun-ecs-rs1e16355
Logtail采集配置文件(user_log_config.json)
user_log_config.json文件记录Logtail从日志服务获取的Logtail采集配置信息,文件类型为JSON,每次Logtail采集配置更新时会同步更新该文件。可通过user_log_config.json文件确认Logtail采集配置是否已经下发到服务器。Logtail采集配置文件存在,且内容与日志服务上的Logtail采集配置一致,表示Logtail采集配置已下发。
- 文件路径
- Linux:/usr/local/ilogtail/user_log_config.json。
- Windows
- 64位:C:\Program Files (x86)\Alibaba\Logtail\user_log_config.json。
- 32位:C:\Program Files\Alibaba\Logtail\user_log_config.json。
- 容器:/usr/local/ilogtail/user_log_config.json。
- 文件示例
$cat /usr/local/ilogtail/user_log_config.json { "metrics" : { "##1.0##k8s-log-c12ba2028*****939f0b$app-java" : { "aliuid" : "16542189*****50", "category" : "app-java", "create_time" : 1534739165, "defaultEndpoint" : "cn-hangzhou-intranet.log.aliyuncs.com", "delay_alarm_bytes" : 0, "enable" : true, "enable_tag" : true, "filter_keys" : [], "filter_regs" : [], "group_topic" : "", "local_storage" : true, "log_type" : "plugin", "log_tz" : "", "max_send_rate" : -1, "merge_type" : "topic", "plugin" : { "inputs" : [ { "detail" : { "IncludeEnv" : { "aliyun_logs_app-java" : "stdout" }, "IncludeLable" : { "io.kubernetes.container.name" : "java-log-demo-2", "io.kubernetes.pod.namespace" : "default" }, "Stderr" : true, "Stdout" : true }, "type" : "service_docker_stdout" } ] }, "priority" : 0, "project_name" : "k8s-log-c12ba2028c*****ac1286939f0b", "raw_log" : false, "region" : "cn-hangzhou", "send_rate_expire" : 0, "sensitive_keys" : [], "tz_adjust" : false, "version" : 1 } } }
AppInfo记录文件(app_info.json)
app_info.json文件记录Logtail的启动时间、获取到的IP地址、主机名等信息。
- AppInfo记录文件仅用于记录Logtail内部信息。修改该文件不会改变Logtail获取的IP地址。
- 如果修改了服务器的主机名等网络配置,请重启Logtail,获取新的IP地址。
- 文件路径
- Linux:/usr/local/ilogtail/app_info.json。
- Windows
- 64位:C:\Program Files (x86)\Alibaba\Logtail\app_info.json。
- 32位:C:\Program Files\Alibaba\Logtail\app_info.json。
- 容器:/usr/local/ilogtail/app_info.json。
- 文件示例
$cat /usr/local/ilogtail/app_info.json { "UUID" : "", "hostname" : "logtail-ds-slpn8", "instance_id" : "E5F93BC6-B024-11E8-8831-0A58AC14039E_1**.***.***.***_1536053315", "ip" : "1**.***.***.***", "logtail_version" : "0.16.13", "os" : "Linux; 3.10.0-693.2.2.el7.x86_64; #1 SMP Tue Sep 12 22:26:13 UTC 2017; x86_64", "update_time" : "2018-09-04 09:28:36" }
字段 说明 UUID 服务器序列号。 hostname 主机名。 instance_id 随机生成的Logtail唯一标识。 ip Logtail获取到的IP地址。该字段为空时表示Logtail没有获取到IP地址,Logtail无法正常运行,请为服务器设置IP地址并重启Logtail。 说明 如果您创建了IP地址机器组,请确保机器组中配置的IP与此处显示的IP地址一致。如果不一致,请在日志服务控制台上修改机器组内IP地址,等待1分钟再查看。logtail_version Logtail客户端版本。 os 操作系统版本。 update_time Logtail最近一次启动时间。
Logtail运行日志(ilogtail.LOG)
ilogtail.LOG文件记录了Logtail的运行日志,日志级别从低到高分别为INFO、WARN和ERROR,其中INFO类型的日志无需关注。
- 文件路径
- Linux:/usr/local/ilogtail/ilogtail.LOG。
- Windows
- 64位:C:\Program Files (x86)\Alibaba\Logtail\ilogtail.LOG。
- 32位:C:\Program Files\Alibaba\Logtail\ilogtail.LOG。
- 容器:/usr/local/ilogtail/ilogtail.LOG。
- 文件示例
$tail /usr/local/ilogtail/ilogtail.LOG [2018-09-13 01:13:59.024679] [INFO] [3155] [build/release64/sls/ilogtail/elogtail.cpp:123] change working dir:/usr/local/ilogtail/ [2018-09-13 01:13:59.025443] [INFO] [3155] [build/release64/sls/ilogtail/AppConfig.cpp:175] load logtail config file, path:/etc/ilogtail/conf/ap-southeast-2/ilogtail_config.json [2018-09-13 01:13:59.025460] [INFO] [3155] [build/release64/sls/ilogtail/AppConfig.cpp:176] load logtail config file, detail:{ "config_server_address" : "http://logtail.ap-southeast-2-intranet.log.aliyuncs.com", "data_server_list" : [ { "cluster" : "ap-southeast-2", "endpoint" : "ap-southeast-2-intranet.log.aliyuncs.com" } ]
Logtail插件日志(logtail_plugin.LOG)
logtail_plugin.LOG文件记录Logtail插件的运行日志,日志级别从低到高分别为INFO、WARN和ERROR,其中INFO类型的日志无需关注。
如果在诊断采集错误时,提示CANAL_RUNTIME_ALARM等错误,可以通过logtail_plugin.LOG文件排查。
- 文件路径
- Linux:/usr/local/ilogtail/logtail_plugin.LOG。
- Windows:
- 64位:C:\Program Files (x86)\Alibaba\Logtail\logtail_plugin.LOG。
- 32位:C:\Program Files\Alibaba\Logtail\logtail_plugin.LOG。
- 容器:/usr/local/ilogtail/logtail_plugin.LOG。
- 文件示例
$tail /usr/local/ilogtail/logtail_plugin.LOG 2018-09-13 02:55:30 [INF] [docker_center.go:525] [func1] docker fetch all:start 2018-09-13 02:55:30 [INF] [docker_center.go:529] [func1] docker fetch all:stop 2018-09-13 03:00:30 [INF] [docker_center.go:525] [func1] docker fetch all:start 2018-09-13 03:00:30 [INF] [docker_center.go:529] [func1] docker fetch all:stop 2018-09-13 03:03:26 [INF] [log_file_reader.go:221] [ReadOpen] [##1.0##sls-zc-test-hz-pub$docker-stdout-config,k8s-stdout] open file for read, file:/logtail_host/var/lib/docker/containers/7f46afec6a14de39b59ee9cdfbfa8a70c2fa26f1148b2e2f31bd3410f5b2d624/7f46afec6a14de39b59ee9cdfbfa8a70c2fa26f1148b2e2f31bd3410f5b2d624-json.log offset:40379573 status:794354-64769-40379963 2018-09-13 03:03:26 [INF] [log_file_reader.go:221] [ReadOpen] [##1.0##k8s-log-c12ba2028cfb444238cd9ac1286939f0b$docker-stdout-config,k8s-stdout] open file for read, file:/logtail_host/var/lib/docker/containers/7f46afec6a14de39b59ee9cdfbfa8a70c2fa26f1148b2e2f31bd3410f5b2d624/7f46afec6a14de39b59ee9cdfbfa8a70c2fa26f1148b2e2f31bd3410f5b2d624-json.log offset:40379573 status:794354-64769-40379963 2018-09-13 03:04:26 [INF] [log_file_reader.go:308] [CloseFile] [##1.0##sls-zc-test-hz-pub$docker-stdout-config,k8s-stdout] close file, reason:no read timeout file:/logtail_host/var/lib/docker/containers/7f46afec6a14de39b59ee9cdfbfa8a70c2fa26f1148b2e2f31bd3410f5b2d624/7f46afec6a14de39b59ee9cdfbfa8a70c2fa26f1148b2e2f31bd3410f5b2d624-json.log offset:40379963 status:794354-64769-40379963 2018-09-13 03:04:27 [INF] [log_file_reader.go:308] [CloseFile] [##1.0##k8s-log-c12ba2028cfb444238cd9ac1286939f0b$docker-stdout-config,k8s-stdout] close file, reason:no read timeout file:/logtail_host/var/lib/docker/containers/7f46afec6a14de39b59ee9cdfbfa8a70c2fa26f1148b2e2f31bd3410f5b2d624/7f46afec6a14de39b59ee9cdfbfa8a70c2fa26f1148b2e2f31bd3410f5b2d624-json.log offset:40379963 status:794354-64769-40379963 2018-09-13 03:05:30 [INF] [docker_center.go:525] [func1] docker fetch all:start 2018-09-13 03:05:30 [INF] [docker_center.go:529] [func1] docker fetch all:stop
容器路径映射文件(docker_path_config.json)
docker_path_config.json文件只有在采集容器日志时才会创建,用于记录容器文件和宿主机文件的路径映射关系。文件类型为JSON。
如果在诊断采集错误时,如果提示DOCKER_FILE_MAPPING_ALARM错误,表示添加Docker文件映射失败,可以通过docker_path_config.json文件排查。
- docker_path_config.json文件为记录文件,任何修改操作均不会生效。删除后会自动创建,不影响业务的正常运行。
- 因采集容器日志异常而提交工单时,请在工单中上传此文件。
- 文件路径
/usr/local/ilogtail/docker_path_config.json
- 文件示例
$cat /usr/local/ilogtail/docker_path_config.json { "detail" : [ { "config_name" : "##1.0##k8s-log-c12ba2028cfb444238cd9ac1286939f0b$nginx", "container_id" : "df19c06e854a0725ea7fca7e0378b0450f7bd3122f94fe3e754d8483fd330d10", "params" : "{\n \"ID\" : \"df19c06e854a0725ea7fca7e0378b0450f7bd3122f94fe3e754d8483fd330d10\",\n \"Path\" : \"/logtail_host/var/lib/docker/overlay2/947db346695a1f65e63e582ecfd10ae1f57019a1b99260b6c83d00fcd1892874/diff/var/log\",\n \"Tags\" : [\n \"nginx-type\",\n \"access-log\",\n \"_image_name_\",\n \"registry.cn-hangzhou.aliyuncs.com/log-service/docker-log-test:latest\",\n \"_container_name_\",\n \"nginx-log-demo\",\n \"_pod_name_\",\n \"nginx-log-demo-h2lzc\",\n \"_namespace_\",\n \"default\",\n \"_pod_uid_\",\n \"87e56ac3-b65b-11e8-b172-00163f008685\",\n \"_container_ip_\",\n \"172.20.4.224\",\n \"purpose\",\n \"test\"\n ]\n}\n" } ], "version" : "0.1.0" }