Logtail運行時依賴一系列的配置文件并產生部分信息記錄文件,本文檔介紹常見文件的基本信息及路徑。
啟動參數配置文件(ilogtail_config.json)
ilogtail_config.json文件用于配置Logtail的啟動參數,文件類型為JSON。更多信息,請參見設置Logtail啟動參數。
該文件必須為合法JSON,否則無法啟動Logtail。
修改該文件后,必須重啟Logtail才能生效。具體操作,請參見重啟Logtail。
Logtail默認使用HTTP協議和服務端進行管控面和數據面的通信,使用HTTPS協議和服務端進行鑒權。
如果出于安全考慮,需要使用HTTPS協議和服務端進行通信,則可以分別將
config_server_address
和data_server_list.endpoint
顯式指定為https。如果使用HTTPS協議傳輸數據,會增加傳輸延時,非關鍵場景不建議使用。
安裝Logtail后,您可以在ilogtail_config.json文件進行如下操作。
修改Logtail的運行參數。
檢驗安裝命令是否正確。
ilogtail_config.json文件中的
config_server_address
參數和data_server_list
參數的值取決于安裝時選擇的安裝命令,如果其中的地域和日志服務所在地域不一致或地址無法聯通,說明安裝時選擇了錯誤的命令。這時Logtail無法正常采集日志,需重新安裝。
文件路徑
主機環境
操作系統
Logtail
ilogtail_config.json文件路徑
Linux
Logtail(64位程序)
/usr/local/ilogtail/ilogtail_config.json
Windows(64位操作系統)
Logtail(64位程序)
C:\Program Files\Alibaba\Logtail\ilogtail_config.json
Logtail(32位程序)
C:\Program Files (x86)\Alibaba\Logtail\ilogtail_config.json
說明Windows 64位操作系統支持運行32/64位應用程序,但是出于兼容性考慮,在Windows 64位操作系統上,Windows會使用單獨的x86目錄來存放32位應用程序。
Windows (32位操作系統)
Logtail(32位程序)
C:\Program Files\Alibaba\Logtail\ilogtail_config.json
容器環境
ilogtail_config.json文件存儲在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文件用于配置用戶自定義標識。更多信息,請參見創建用戶自定義標識機器組。
創建自定義標識機器組時需要配置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采集配置已下發。
除手動配置AccessKey信息、數據庫密碼等敏感信息外,不建議修改該文件。
文件路徑
主機環境
操作系統
Logtail
user_log_config.json文件路徑
Linux
Logtail(64位程序)
/usr/local/ilogtail/user_log_config.json
Windows(64位操作系統)
Logtail(64位程序)
C:\Program Files\Alibaba\Logtail\user_log_config.json
Logtail(32位程序)
C:\Program Files (x86)\Alibaba\Logtail\user_log_config.json
說明Windows 64位操作系統支持運行32/64位應用程序,但是出于兼容性考慮,在Windows 64位操作系統上,Windows會使用單獨的x86目錄來存放32位應用程序。
Windows (32位操作系統)
Logtail(32位程序)
C:\Program Files\Alibaba\Logtail\user_log_config.json
容器環境
user_log_config.json文件存儲在Logtail容器中,文件路徑為/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地址、主機名等信息。
如果已在服務器的/etc/hosts文件中設置了主機名與IP地址綁定,則自動獲取綁定的IP地址。如果沒有設置主機名綁定,會自動獲取本機的第一塊網卡的IP地址。
AppInfo記錄文件僅用于記錄Logtail內部信息。修改該文件不會改變Logtail獲取的IP地址。
如果修改了服務器的主機名等網絡配置,請重啟Logtail,獲取新的IP地址。
文件路徑
主機環境
操作系統
Logtail
app_info.json文件路徑
Linux
Logtail(64位程序)
/usr/local/ilogtail/app_info.json
Windows(64位操作系統)
Logtail(64位程序)
C:\Program Files\Alibaba\Logtail\app_info.json
Logtail(32位程序)
C:\Program Files (x86)\Alibaba\Logtail\app_info.json
說明Windows 64位操作系統支持運行32/64位應用程序,但是出于兼容性考慮,在Windows 64位操作系統上,Windows會使用單獨的x86目錄來存放32位應用程序。
Windows (32位操作系統)
Logtail(32位程序)
C:\Program Files\Alibaba\Logtail\app_info.json
容器環境
app_info.json文件存儲在Logtail容器中,文件路徑為/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類型的日志無需關注。
如果采集異常,請先診斷采集錯誤,根據具體的錯誤類型和Logtail運行日志排查問題。更多信息,請參見如何查看Logtail采集錯誤信息。
如果因Logtail采集異常提交工單時,請同時上傳該日志。
文件路徑
主機環境
操作系統
Logtail
ilogtail.LOG件路徑
Linux
Logtail(64位程序)
/usr/local/ilogtail/ilogtail.LOG
Windows(64位操作系統)
Logtail(64位程序)
C:\Program Files\Alibaba\Logtail\ilogtail.LOG
Logtail(32位程序)
C:\Program Files (x86)\Alibaba\Logtail\ilogtail.LOG
說明Windows 64位操作系統支持運行32/64位應用程序,但是出于兼容性考慮,在Windows 64位操作系統上,Windows會使用單獨的x86目錄來存放32位應用程序。
Windows (32位操作系統)
Logtail(32位程序)
C:\Program Files\Alibaba\Logtail\ilogtail.LOG
容器環境:
ilogtail.LOG文件存儲在Logtail容器中,文件路徑為/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-1/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-1-intranet.log.aliyuncs.com", "data_server_list" : [ { "cluster" : "ap-southeast-1", "endpoint" : "ap-southeast-1-intranet.log.aliyuncs.com" } ]
Logtail插件日志(logtail_plugin.LOG)
logtail_plugin.LOG文件記錄Logtail插件的運行日志,日志級別從低到高分別為INFO、WARN和ERROR,其中INFO類型的日志無需關注。
如果在診斷采集錯誤時,提示CANAL_RUNTIME_ALARM等錯誤,可以通過logtail_plugin.LOG文件排查。
如果因插件異常提交工單時,請在工單中上傳該文件。
文件路徑
主機環境
操作系統
Logtail
logtail_plugin.LOG文件路徑
Linux
Logtail(64位程序)
/usr/local/ilogtail/logtail_plugin.LOG
Windows(64位操作系統)
Logtail(64位程序)
C:\Program Files\Alibaba\Logtail\logtail_plugin.LOG
Logtail(32位程序)
C:\Program Files (x86)\Alibaba\Logtail\logtail_plugin.LOG
說明Windows 64位操作系統支持運行32/64位應用程序,但是出于兼容性考慮,在Windows 64位操作系統上,Windows會使用單獨的x86目錄來存放32位應用程序。
Windows (32位操作系統)
Logtail(32位程序)
C:\Program Files\Alibaba\Logtail\logtail_plugin.LOG
容器環境
logtail_plugin.LOG文件存儲在Logtail容器中,文件路徑為/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" }