linux - 在 linux journalctl 中查看用户 ID
问题描述
我journalctl -f
用来查看进程写入的日志,但它不会打印启动进程写入 syslog 的用户。我们可以为 journalctl 提供任何选项以打印用户 ID 吗?谢谢。
解决方案
如果您运行journalctl -o verbose
,您将看到每个条目的完整日志记录,如下所示:
Fri 2019-08-02 20:02:11.307673 EDT [s=e328b42f9ccd4ef28cc946dba525b34c;i=12377a1;b=299ec3a7a9e545f3ab77225c045aee0c;m=7a7d1960ef;t=58f2b2fc43900;x=ceff52112a8146ae]
_TRANSPORT=journal
_UID=1000
_GID=1000
_CAP_EFFECTIVE=0
_AUDIT_LOGINUID=1000
_SYSTEMD_OWNER_UID=1000
_SYSTEMD_SLICE=user-1000.slice
_SYSTEMD_USER_SLICE=-.slice
_BOOT_ID=299ec3a7a9e545f3ab77225c045aee0c
_MACHINE_ID=39332780e5924d6ba0bdf775223941f6
_HOSTNAME=madhatter
PRIORITY=6
SYSLOG_FACILITY=3
CODE_FILE=../src/core/job.c
CODE_LINE=594
CODE_FUNC=job_log_begin_status_message
SYSLOG_IDENTIFIER=systemd
MESSAGE=Starting GNOME Terminal Server...
JOB_ID=1446
JOB_TYPE=start
USER_UNIT=gnome-terminal-server.service
USER_INVOCATION_ID=188bcf32f532490c8ce5ec486895f9d0
MESSAGE_ID=7d4958e842da4a758f6c1cdc7b36dcc5
_PID=3329
_COMM=systemd
_EXE=/usr/lib/systemd/systemd
_CMDLINE=/usr/lib/systemd/systemd --user
_AUDIT_SESSION=3
_SYSTEMD_CGROUP=/user.slice/user-1000.slice/user@1000.service/init.scope
_SYSTEMD_UNIT=user@1000.service
_SYSTEMD_USER_UNIT=init.scope
_SYSTEMD_INVOCATION_ID=5537b4a00b5946ce9f3b2b664c3d10e8
_SOURCE_REALTIME_TIMESTAMP=1564790531307673
查看man journalctl
更多信息。例如,-o json
如果您想以某种方式以编程方式处理日志行。
推荐阅读
- c++ - 来自 gcc c++11 的无法解释的“宽松的抛出说明符”错误
- angular - Angular(2)材质自动完成自定义过滤器
- visual-studio - 如何在 VS 中配置 Azure 分析服务隐私设置?
- java - 用手电筒重播摩尔斯电码?
- kubernetes - 不支持的值:“rbac.authorization.k8s.io”
- javascript - 使用 Ng2-Charts/ChartJs 的堆积条形“时间线”图表
- bash - Convert timestamp string to UTC date in bash
- asp.net-mvc - 如何将查询字符串添加到 actionLink?
- python - 仅加入包含 NaN 值的列表中的整数 [Python]
- python - (Py)Vips vs Pillow 提升画质