日志记录
BETA
了解 DC/OS 核心组件和服务的诊断和状态日志
DC/OS 群集节点生成包含诊断和状态信息的日志,用于 DC/OS 核心组件和 DC/OS 服务。
服务、任务和节点日志
日志记录组件提供可揭示系统日志的 HTTP API /system/v1/logs/
。您可以使用以下 CLI 命令,访问有关 DC/OS 调度器服务(如 Marathon 或 Kafka)的信息:
dcos service log --follow <scheduler-service-name>
您可以通过运行此 CLI 命令来访问 DC/OS 任务日志:
dcos task log --follow <service-name>
您可以使用以下 CLI 命令来访问管理节点的日志:
dcos node log --leader
要访问代理节点的日志,请运行 dcos node
以获取节点的 Mesos ID,然后运行以下 CLI 命令:
dcos node log --mesos-id=<node-id>
您可以从 DC/OS Web 界面 的服务 > 服务选项卡,下载服务的所有日志文件。您也可以监控 stdout
/stderr
。
如需更多信息,请参阅“服务和任务日志”快速入门指南。
注意:DC/OS 可以将任务日志的副本发送到主机的 journald,但由于已知的系统性能问题,默认情况下会禁用此功能,有关详细信息,请参阅配置文档
。
系统日志
DC/OS 组件使用 systemd-journald
来存储其日志。要访问 DC/OS 核心组件日志,请 为节点执行 SSH,然后运行此命令以查看所有日志:
journalctl -u "dcos-*" -b
输入组件名,您可以查看特定 [组件] (/1.12/overview/architecture/components/) 的日志。例如,要访问 Admin Router 日志,可运行此命令:
journalctl -u dcos-nginx -b
您可以在 DC/OS Web 界面的节点选项卡上发现哪些组件不正常。
图 1. 显示节点的系统运行状况日志
日志聚合
流式传输来自群集中机器的日志并非始终可行。有时您需要已发生事件的历史记录,而这需要有存储和聚合日志的方法。这些主题描述了其中一些最常见的解决方案:
[
日志记录快速入门
BETA
DC/OS 日志记录快速入门…
]($534b457d0f8a05bf.md)[
访问系统和组件日志
ENTERPRISE
BETA
管理用户对系统和组件日志的访问…
]($5daa4b5ee0fb570a.md)[
控制对任务日志的访问
ENTERPRISE
BETA
使用 Marathon 群组管理用户对任务日志的访问…
]($5f81152b229f21c5.md)[
配置任务日志输出和保留
影响日志记录的任务环境变量…
]($d2b75201e7019b22.md)[
日志聚合
使用 ELK 和 Splunk 聚合系统日志…
]($350db20588f69bfa.md)[
日志记录 API
使用日志记录 API…
]($7f2adf59a0232224.md)[
日志记录 API 示例
BETA
日志记录 API 示例…
]($d4b1191213da868a.md)