当前位置: 首页 > 面试题库 >

linux在哪里存储我的系统日志?

苏君昊
2023-03-14
问题内容

我编写了一个简单的测试应用程序,以将某些内容记录到日志文件中。我正在使用 linux mint ,在应用程序执行后,我尝试使用以下命令查看日志:

tail -n 100 /var/log/messages

但是文件消息既不经过测试也不存在。在下面可以找到我的代码。也许我做错了什么,文件没有存储在那儿,或者我需要启用Linux Mint中的登录功能。

#include <stdio.h>
#include <stdlib.h>
#include <syslog.h>

void init_log()
{
    setlogmask(LOG_UPTO(LOG_NOTICE));
    openlog("testd",LOG_CONS | LOG_PID | LOG_NDELAY, LOG_LOCAL1);
}

int main(void) {

    init_log();
    printf("Session started!");
    syslog(LOG_NOTICE, "Session started!!");
    closelog();

    return EXIT_SUCCESS;
}

问题答案:

在我的Ubuntu机器上,我可以在看到输出/var/log/syslog

在RHEL / CentOS计算机上,可在中找到输出/var/log/messages

这是由rsyslog服务控制的,因此,如果由于某种原因而被禁用,则可能需要使用来启动它systemctl start rsyslog

如其他人所述,您的syslog()输出将由/var/log/syslog文件记录。
您可以在看到系统,用户和其他日志/var/log

有关更多详细信息:这是一个有趣的链接。



 类似资料:
  • 问题内容: 在做的选择谷歌浏览器,在那里我的文件系统做文件获取写的?在构建和调试此应用时,我想将文件放到那里并让Chrome与它们交互。 问题答案: 对我来说,至少在Mac OSX上,它们对于我来说存储在下面。如果您使用的是个人资料,则会有而不是的个人资料目录。但是,每个来源的已保存文件/文件夹都被混淆在您难以与之交互的目录下。 要调试Filesystem API,您可以选择以下几种方法: 使用此

  • 问题内容: 这可能是一个愚蠢的问题,但是我对Java Logger有点迷茫 我在哪里可以看到日志?同样来自java.util.logging.Logger库的这句话: 在每次记录调用时,记录器最初都会根据记录器的有效日志级别对请求级别(例如SEVERE或FINE)进行廉价检查。如果请求级别低于日志级别,则日志记录调用立即返回。 通过此初始(便宜)测试后,记录器将分配一个LogRecord来描述记录

  • 问题内容: 如果我在终端输入 … shell在哪里存储该环境变量? 我正在使用Ubuntu 8.10。我查看了文件〜/ .profile和/ etc / profile,找不到DISPLAY的痕迹。 问题答案: 进程的环境变量在运行时存在,并且未存储在某些文件中。它们存储在进程自己的内存中(在那里,它们会传递给子进程)。但是其中有一个虚拟文件 该文件显示了在调用进程时传递的所有环境变量(除非进程覆

  • 我知道每个操作系统都有一个特定的目录,程序可以在其中存储数据。例如,在macOS中有一个名为 /Applications.的目录 我在哪里可以在Windows、Linux和macOS上存储来自java程序(多用户)的程序数据?有ystem.property?

  • 问题内容: Google最相关的结果似乎表明,为了访问日志,我们必须将自己的日志表解绑定到数据库中,并使Reporting Services对其进行写入 。 简而言之:Reporting Services是否一定要有纯文本日志文件?如果是,这些文件存储在哪里? 问题答案: 假设您将SQL 2008安装到默认位置:C:\ Program Files \ Microsoft SQL Server \

  • 问题内容: 相对路径在log4j.properties文件中使用。 如何以编程方式找到存储日志的绝对路径? 问题答案: 来自:http : //www.gunith.com/2010/11/how-to-get-the-file-path-of-a- log4j-log-file/ 假设log4j.properties文件如下所示, 在这种情况下,您的Java代码应如下所示, 注意, 迁移日志 用