首页 > 其他分享 >把控制台日志输出到文件

把控制台日志输出到文件

时间:2023-09-30 16:45:24浏览次数:25  
标签:输出 log 文件 写入 go 控制台 日志

内容来自对 chatgpt 的咨询

概述

一般来说,我们服务在运行过程中会有2种日志,

  • 一类是在程序里用日志库管理的日志,这类日志会被收集到指定的日志文件里,想查看日志的话,直接去对应路径下查看就行;
  • 另一类是直接使用 print 语句打印在控制台的日志,这些日志没有使用日志库,所以不会被收集到日志文件,有时如果我们想要把这些日志也收集起来,方便排查问题,那该怎么办呢?

解决方案

针对第二种情况,可以使用 shell 重定向的功能,把控制台日志重定向到文件里,重定向符号是 > 或者 >>> 表示如果文件存在,创建新文件进行写入,>> 表示把日志追加到文件末尾。

go run main.go > console_log.txt # 如果文件存在,创建新文件进行写入
go run main.go >> console_log.txt # 如果文件存在,把日志追加到文件末尾。

特别提醒

使用 go run main.go > console_log.txt 不会影响到通过 log 库或其他专门的日志库生成的日志文件。这些库通常将日志信息写入到指定的日志文件或其他输出流,这不会被 shell 的输出重定向操作影响。原本应该存储到某特定日志文件的日志会照常被写入到那个特定的日志文件中。

标签:输出,log,文件,写入,go,控制台,日志
From: https://www.cnblogs.com/hi3254014978/p/17737993.html

相关文章

  • 实验1 C语言输入输出和简单程序编写
    task1.c代码1#include<stdio.h>2intmain()3{4printf("O\n");5printf("<H>\n");6printf("II\n");7return0;8}task1.c运行截图 task1-1.c代码1#include<stdio.h>2int......
  • Nginx syslog 日志系统
    做ELK目录,其中Logstash需要远程获取其他服务器上的日志,采用nginxsyslog进行传输。以下是对syslog参数的说明server=address        定义syslog服务器地址。该地址可以指定为带有可选端口的域名或IP地址,也可以指定为unix:前缀后面指定的unix域套接字路径。如......
  • C语言输入输出和简单程序编写
    Task1.11#include<stdio.h>2#include<stdlib.h>3intmain(){4printf("0\n");5printf("<H>\n");6printf("II\n");7printf("0\n");8printf("<H>......
  • 实验1 C语言输入输出和简单程序编写
    一、实验目的二、实验准备三、实验内容四、实验结论task1task1_1代码:1#include<stdio.h>23intmain()4{5printf("O\n");6printf("<H>\n");7printf("II\n");89printf("O\n");10......
  • 实验1 C语言输入输出和简单程序编写
    实验任务11.1代码1//打印一个字符小人23#include<stdio.h>4intmain()5{6printf("O\n");7printf("<H>\n");8printf("II\n");9printf("O\n");10printf("<H>\......
  • asp .net core Exceptionless日志操作
    exceptionless官网使用说明安装Nuget包添加引用usingExceptionless;usingExceptionless.Logging;初始化-秘钥-请求地址//构造函数初始化日志参数(日志系统地址,项目模块)publicDefaultController(){if(string.IsNullOrWhiteSpace(ExceptionlessClient.Default.Config......
  • 记一次,工作中,日志打印的错误,你真的会打印日志吗?
    问题今天在工作中,Redis接收到消息,入库失败了,只看到了有报错,但是没有看到是什么异常,还有具体的堆栈信息。publicclassExceptionTest{publicstaticvoidmain(String[]args){try{System.out.println(1/0);}catch(Exceptione){......
  • 实验1 C语言输入输出和简单程序的编写
    #include<stdio.h>intmain(){printf("0\n");printf("<H>\n");printf("II\n");return0;}#include<stdio.h>intmain(){printf("0\n");printf("<H>\n"......
  • 标准输出函数printf()的使用
    1.printf()函数的来历和作用printf()函数是系统函数,标准输出函数,向显示器屏幕窗口输出数据。需要在程序文件的开始使用#include包含命令,包含stdio.h。2.printf()函数格式函数原型声明语句格式(包含在stdio.h头文件中):intprintf(<字符指针参数>,<形式参数表>);函数调用格式(......
  • 实验一 c语言输入输出和简单程序编写
    task1.c源代码#include<stdio.h>#include<stdlib.h>intmain(){printf("o\n");printf("<H>\n");printf("II\n");return0;}运行结果#include<stdio.h>intmain(){printf("......