Journald 输入

编辑

版本

1.1.0 (查看全部)

兼容的 Kibana 版本

8.8.0 或更高版本

支持的无服务器项目类型
这是什么?

安全性
可观测性

订阅级别
这是什么?

基本

journald 输入集成从 journald 系统服务读取日志。journald 输入读取日志数据及其相关的元数据。

journald 输入在安装了 systemd 的 Linux 系统上可用。

一个示例事件如下所示

{
    "@timestamp": "2020-07-22T13:17:10.012Z",
    "agent": {
        "ephemeral_id": "f7858fe6-ce04-46d6-83c3-f45a4e019395",
        "id": "26693255-8a33-48c9-87cc-3d5f846c4bcd",
        "name": "docker-fleet-agent",
        "type": "filebeat",
        "version": "8.11.0"
    },
    "data_stream": {
        "dataset": "journald.logs",
        "namespace": "ep",
        "type": "logs"
    },
    "ecs": {
        "version": "8.0.0"
    },
    "elastic_agent": {
        "id": "26693255-8a33-48c9-87cc-3d5f846c4bcd",
        "snapshot": true,
        "version": "8.11.0"
    },
    "event": {
        "agent_id_status": "verified",
        "code": "ec387f577b844b8fa948f33cad9a75e6",
        "created": "2023-10-02T18:19:38.048Z",
        "dataset": "journald.logs",
        "ingested": "2023-10-02T18:19:41Z",
        "kind": "event"
    },
    "host": {
        "hostname": "sleipnir",
        "id": "505afdafda3b4f33a63749ae39284742"
    },
    "input": {
        "type": "journald"
    },
    "journald": {
        "custom": {
            "available": "0",
            "available_pretty": "0B",
            "current_use": "1023455232",
            "current_use_pretty": "976.0M",
            "disk_available": "6866636800",
            "disk_available_pretty": "6.3G",
            "disk_keep_free": "1466253312",
            "disk_keep_free_pretty": "1.3G",
            "journal_name": "System journal",
            "journal_path": "/var/log/journal/505afdafda3b4f33a63749ae39284742",
            "limit": "977502208",
            "limit_pretty": "932.2M",
            "max_use": "977502208",
            "max_use_pretty": "932.2M"
        },
        "gid": 0,
        "host": {
            "boot_id": "fa3c2e3080dc4cd5be5cb5a43e140d51"
        },
        "pid": 19317,
        "process": {
            "capabilities": "25402800cf",
            "command_line": "/lib/systemd/systemd-journald",
            "executable": "/lib/systemd/systemd-journald",
            "name": "systemd-journal"
        },
        "uid": 0
    },
    "log": {
        "syslog": {
            "appname": "systemd-journald",
            "facility": {
                "code": 3
            },
            "priority": 6
        }
    },
    "message": "System journal (/var/log/journal/505afdafda3b4f33a63749ae39284742) is 976.0M, max 932.2M, 0B free.",
    "process": {
        "args": [
            "/lib/systemd/systemd-journald"
        ],
        "args_count": 1,
        "command_line": "/lib/systemd/systemd-journald",
        "pid": 19317,
        "thread": {
            "capabilities": {
                "effective": [
                    "CAP_CHOWN",
                    "CAP_DAC_OVERRIDE",
                    "CAP_DAC_READ_SEARCH",
                    "CAP_FOWNER",
                    "CAP_SETGID",
                    "CAP_SETUID",
                    "CAP_SYS_PTRACE",
                    "CAP_SYS_ADMIN",
                    "CAP_AUDIT_CONTROL",
                    "CAP_MAC_OVERRIDE",
                    "CAP_SYSLOG",
                    "CAP_AUDIT_READ"
                ]
            }
        }
    },
    "systemd": {
        "cgroup": "/system.slice/systemd-journald.service",
        "invocation_id": "7c11cda63635437bafe21c92851618a8",
        "slice": "system.slice",
        "transport": "driver",
        "unit": "systemd-journald.service"
    },
    "tags": [
        "forwarded"
    ],
    "user": {
        "group": {
            "id": "0"
        },
        "id": "0"
    }
}
导出的字段
字段 描述 类型

@timestamp

事件时间戳。

日期

container.log.tag

用户定义的容器标签。源自 Docker journald 日志驱动程序。

关键字

container.partial

当消息被分割时,标记日志完整性的字段。docker journald 日志驱动程序将长消息分割成多个事件。

布尔值

data_stream.dataset

数据流数据集。

constant_keyword

data_stream.namespace

数据流命名空间。

constant_keyword

data_stream.type

数据流类型。

constant_keyword

ecs.version

此事件符合的 ECS 版本。ecs.version 是一个必填字段,必须存在于所有事件中。当跨多个索引查询时(这些索引可能符合稍微不同的 ECS 版本),此字段允许集成调整为事件的模式版本。

关键字

event.code

此事件的标识代码(如果存在)。某些事件源使用事件代码来明确标识消息,而不管消息语言或随时间调整的措辞如何。Windows 事件 ID 就是一个例子。

关键字

host.hostname

主机的hostname。它通常包含主机上 hostname 命令返回的内容。

关键字

host.id

唯一的主机 ID。由于 hostname 并不总是唯一的,请使用在您的环境中具有意义的值。例如:当前使用 beat.name

关键字

input.type

关键字

journald.audit.login_uid

日志条目来源进程的登录 UID,由内核审计子系统维护。

长整型

journald.audit.session

日志条目来源进程的会话,由内核审计子系统维护。

关键字

journald.code.file

生成此消息的代码位置(如果已知)。包含源文件名。

关键字

journald.code.func

生成此消息的代码位置(如果已知)。包含函数名。

关键字

journald.code.line

生成此消息的代码位置(如果已知)。包含行号。

长整型

journald.coredump.unit

用于注释包含来自系统单元的内核转储的消息。

关键字

journald.coredump.user_unit

用于注释包含来自用户单元的内核转储的消息。

关键字

journald.custom

调用者添加到日志消息中的结构化字段。

扁平化

journald.gid

日志条目来源进程的组 ID,格式化为十进制字符串。请注意,通过分叉进程的“stdout”或“stderr”获得的条目将包含对父进程有效的凭据。

长整型

journald.host.boot_id

消息生成所在引导的内核引导 ID,格式化为 128 位十六进制字符串。

关键字

journald.kernel.device

内核设备名称。如果条目与块设备关联,则包含设备节点的主设备号和次设备号,以“:”分隔,并以“b”为前缀。字符设备类似,但以“c”为前缀。对于网络设备,这是以“n”为前缀的接口索引。对于所有其他设备,这是以“+”为前缀的子系统名称,后跟“:”,然后是内核设备名称。

关键字

journald.kernel.device_name

内核设备名称,因为它显示在 /sys/ 下的设备树中。

关键字

journald.kernel.device_node_path

此设备在 /dev/ 中的设备节点路径。

关键字

journald.kernel.device_symlinks

指向 /dev/ 中设备节点的其他符号链接名称。此字段通常每个条目设置多次。

关键字

journald.kernel.subsystem

内核子系统名称。

关键字

journald.object.audit.login_uid

长整型

journald.object.audit.session

长整型

journald.object.gid

长整型

journald.object.pid

特权程序(目前 UID 0)可以将 OBJECT_PID= 附加到消息。这将指示 systemd-journald 代表调用者附加额外的 journald.object.*。这些由 systemd-journald 自动添加的额外字段。journald.object.* 这些额外的字段与等效的 journald.* 字段相同,只是描述的是由 PID 标识的进程,而不是记录消息的进程。

长整型

journald.object.process.command_line

关键字

journald.object.process.executable

关键字

journald.object.process.name

关键字

journald.object.systemd.owner_uid

长整型

journald.object.systemd.session

关键字

journald.object.systemd.unit

关键字

journald.object.systemd.user_unit

关键字

journald.object.uid

长整型

journald.pid

日志条目来源进程的进程 ID,格式化为十进制字符串。请注意,通过分叉进程的“stdout”或“stderr”获得的条目将包含对父进程有效的凭据。

长整型

journald.process.capabilities

日志条目来源进程的有效 capabilities(7)。

关键字

journald.process.command_line

日志条目来源进程的命令行。

关键字

journald.process.executable

日志条目来源进程的可执行文件路径。

关键字

journald.process.name

日志条目来源进程的名称。

关键字

journald.uid

日志条目来源进程的用户 ID,格式化为十进制字符串。请注意,通过分叉进程的“stdout”或“stderr”获得的条目将包含对父进程有效的凭据。

长整型

log.syslog.facility.code

日志事件的 Syslog 数字 facility(如果可用)。根据 RFC 5424 和 3164,此值应为 0 到 23 之间的整数。

长整型

log.syslog.identifier

Syslog 标头中包含的标识符(通常是进程)。

关键字

log.syslog.pid

Syslog 标头中包含的 PID。

长整型

log.syslog.priority

事件的 Syslog 数字优先级(如果可用)。根据 RFC 5424 和 3164,优先级为 8 * facility + severity。因此,此数字应包含 0 到 191 之间的值。

长整型

message

对于日志事件,消息字段包含日志消息,针对在日志查看器中查看进行了优化。对于没有原始消息字段的结构化日志,可以连接其他字段以形成事件的人类可读摘要。如果存在多个消息,则可以将它们组合成一个消息。

match_only_text

process.args

进程参数数组,从可执行文件的绝对路径开始。可能会进行过滤以保护敏感信息。

关键字

process.args_count

process.args 数组的长度。此字段可用于查询或对启动进程时提供的参数数量进行存储桶分析。更多参数可能表示可疑活动。

长整型

process.command_line

启动进程的完整命令行,包括可执行文件的绝对路径和所有参数。某些参数可能会被过滤以保护敏感信息。

通配符

process.command_line.text

process.command_line 的多字段。

match_only_text

process.pid

进程 ID。

长整型

process.thread.capabilities.effective

这是内核用于对线程执行权限检查的一组 capabilities。

关键字

systemd.cgroup

systemd 层次结构中的控制组路径。

关键字

systemd.invocation_id

消息生成所在单元的运行时周期的调用 ID,在单元的 $INVOCATION_ID 中可用于进程。

关键字

systemd.owner_uid

日志条目来源进程的 systemd 用户单元或 systemd 会话(如果有)的所有者 UID。

长整型

systemd.session

systemd 会话 ID(如果有)。

关键字

systemd.slice

systemd 切片单元名称。

关键字

systemd.transport

条目如何被 journal 服务接收。

关键字

systemd.unit

systemd 单元名称。

关键字

systemd.user_slice

systemd 用户切片名称。

关键字

systemd.user_unit

systemd 用户管理器中的单元名称(如果有)。

关键字

tags

用于标记每个事件的关键字列表。

关键字

user.group.id

系统/平台上组的唯一标识符。

关键字

user.id

用户的唯一标识符。

关键字

更新日志

编辑
更新日志
版本 详情 Kibana 版本

1.1.0

增强 (查看拉取请求)
将 journald 升级到 ECS 8.10。

增强 (查看拉取请求)
为 Elastic Agent 8.11 及更高版本添加了 ECS 映射 process.thread.capabilities.effective。

8.8.0 或更高版本

1.0.1

错误修复 (查看拉取请求)
使 journald syslog 字段与 ECS 对齐。

8.8.0 或更高版本

1.0.0

增强 (查看拉取请求)
将 Journald 转换为输入类型。

8.8.0 或更高版本

0.0.5

增强 (查看拉取请求)
添加了类别和/或子类别。

0.0.4

增强 (查看拉取请求)
更新 Kibana 要求以支持 8.x。

增强 (查看拉取请求)
message_id 映射到 ECS event.code

0.0.3

增强 (查看拉取请求)
添加多字段的文档

0.0.2

增强 (查看拉取请求)
更新包描述以与其他包保持一致。

0.0.1

增强 (查看拉取请求)
首次发布通用 journald 输入包。