首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏twowinter

    Golang - 日志 logrus

    2 为什么是它 golang 日志 golang 标准日志框架非常简单,仅仅提供了print, panic 和 fatal三个函数。 所以催生了很多第三方的日志,但是在golang的世界里,没有一个日志像slf4j那样在Java中具有绝对统治地位.golang中,流行的日志框架包括logrus、zap、zerolog、seelog 等. logrus 是目前 Github 上 star 数量最多的日志,目前(2018.12,下同)star数量为8119,fork数为1031. logrus功能强大,性能高效,而且具有高度灵活性, 完全兼容golang标准日志模块:logrus拥有六种日志级别:debug、info、warn、error、fatal和panic,这是golang标准日志模块的API的超集.如果您的项目使用标准日志模块 msg="A group of walrus emerges from the ocean" animal=walrus size=10 Feb 27 17:03:20 VM_10_230_centos

    4K10发布于 2020-04-17
  • 来自专栏技术杂记

    日志服务器(10

    config.php [root@h105 loganalyzer-3.6.6]# 点击 【ReCheck】 检查通过 点击 【Next】 保持默认配置,Show message details popup 有日志概要弹出效果 ,选择使用数据 Enable User Database ,目前只支持 mysql,填充正确信息 点击 【Next】

    97330发布于 2021-10-20
  • 来自专栏自动化、性能测试

    Python常用 - logging日志

    logging的简单介绍 用作记录日志,默认分为六种日志级别(括号为级别对应的数值) NOTSET(0) DEBUG(10) INFO(20) WARNING(30) ERROR(40) CRITICAL logging常见对象 Logger:日志,暴露函数给应用程序,基于日志记录器和过滤器级别决定哪些日志有效。 LogRecord :日志记录器,将日志传到相应的处理器处理。 ,默认情况下是精确到毫秒,如 2018-10-13 23:24:57,832,可以额外指定 datefmt 参数来指定该变量的格式 %(name) 日志对象的名称 %(filename)s 不包含路径的文件名 logging工具类 6 __Time__ = 2019/8/8 19:26 7 """ 8 import logging 9 from logging import handlers 10 = 2019/8/8 19:26 7 """ 8 import logging 9 10 import logzero 11 from logzero import logger 12 13

    1.1K10发布于 2020-06-09
  • 来自专栏字节脉搏实验室

    Go日志开发

    这次将自己实现go语言中的日志的思路在这里班门弄斧一下 ? 日志 日志能方便地诊断程序原因、统计程序运行数据,是大型软件系统必不可少的组件之一。 日志输出方式 控制台输出 文件写入(支持文件切割) 日志输出级别 debug、trace、info、warning、error、fartal ? ? 首先就是日志结构 ? ? console:打印到控制台 file:写入到文件 mylogger:日志公用函数 console.go ? ? 接下来的几个函数就是将对应的日志内容打印到控制台,这个传递的msg就是日志内容 然后a变量就是用户的格式化输出参数。 ? ? 由于每个日志级别都是打印到控制台,所以这里就不需要重复造轮子了 ? ? 在log中会日志文件的大小进行检查,判断日志文件的大小是否小于用户指定的文件大小,如果大于,就对文件进行切割 ? ?

    89310发布于 2021-01-19
  • 来自专栏后端码匠

    【NDK】封装日志

    【NDK】封装日志 0x1需求 供C++、Java调用 控制台输出 文件输出(文件大小) 设置日志等级 0x2 C++ 0x21 LogUtils.h // // Created by 后端码匠 LOG_LEVEL_INFO = 3, LOG_LEVEL_DEBUG = 4 }; #ifdef __cplusplus extern "C" { #endif /** * 初始化日志选项 return */ int LogInit(const char *pFile, const char *filename, int logLevel, int printScreen); /** * 日志处理 strFormat * @param ... */ void WriteTextLog(int level, const char *strFormat, ...); /** * 向文件中写入日志 * @param level * @param log */ void WriteTextLogBottom(int level, const char *log); /** * 关闭日志

    87720编辑于 2023-02-27
  • 来自专栏码客

    Go中日志

    在文件输出日志 Gin框架的请求日志默认在控制台输出,但更多的时候,尤其上线运行时,我们希望将用户的请求日志保存到日志文件中,以便更好的分析与备份。 (比如数据)。 main.go:42 Hello World {“name”: “psvmc”} log/slog 需要go1.21版本及以上 log/slog是Go 1.21中引入的一个新的结构化日志 ,它与标准的log包兼容,但提供了更多的功能和灵活性。 该默认Logger将日志信息写入标准错误,并在每条日志信息前添加日期和时间。 log/slog的日志记录由以下几个部分组成: 时间:日志记录发生的时间,可以是本地时间或UTC时间。

    48810编辑于 2024-03-29
  • Zap日志指南

    Zap是由Uber开发的高性能Go日志,特别适合后端服务。 入门: 第一目:为什么要选择Zap? 在Go语言的日志中,流行的有 zap、logrus...甚至还有Go自带的原生的log。 {"level":"info","ts":1690000000.1234567,"msg":"服务启动","service":"user-api","start_time":"2023-07-22T10 :00:00Z"} {"level":"warn","ts":1690000001.2345678,"msg":"数据连接缓慢","duration":0.15} {"level":"error"," ", zap.String("url", "/api/users"), zap.Int("status", 200), ) } // 2023-07-22T10:00:00.123Z INFO 格式化字符串与结构字段,语法更接近传统日志,缺点就是性能略低。

    35510编辑于 2025-10-22
  • 来自专栏全栈程序员必看

    httprunner(10日志信息「建议收藏」

    日志信息 每个用例都会生成一个对应的log日志,位置:<ProjectRootDir>/logs/TestCaseID.run.log. 从3.0.13开始,HttpRunner将在调试阶段记录客户端和服务端IP:PORT,同时日志中也会体现出来 2021-02-09 17:58:28.874 | DEBUG | httprunner.client

    44040编辑于 2022-09-19
  • 来自专栏Sign

    精灵之息 开发日志10

    但是如果换了主持人给的门而没有中奖,大部分人估计会耿耿于怀“当初要是没换就好了,都是这个主持人诱骗我的”。

    42640发布于 2021-08-24
  • 来自专栏微信公众号【Java技术江湖】

    重新学习MySQL数据10:MySQL里的那些日志

    重新学习MySQL数据10:MySQL里的那些日志们 同大多数关系型数据一样,日志文件是MySQL数据的重要组成部分。 这些日志可以帮助我们定位mysqld内部发生的事件,数据性能故障,记录数据的变更历史,用户恢复数据等等。本文主要描述错误日志文件。 使用mysqldump备份时,只是对一段时间的数据进行全备,但是如果备份后突然发现数据服务器故障,这个时候就要用到binlog的日志了。 主要作用是用于数据的主从复制及数据的增量恢复。 总结 mysql数据的binlog和relay log日志有着举足轻重的作用,并且relay log仅仅存在于mysql 的slave,它的作用就是记录slave中的io进程接收的从主库传过来的binlog 使用mysqldump备份时,只是对一段时间的数据进行全备,但是如果备份后突然发现数据服务器故障,这个时候就要用到binlog的日志了。 主要作用是用于数据的主从复制及数据的增量恢复。

    1.8K40发布于 2019-11-29
  • 来自专栏python12

    Python日志logging总结

    1、日志级别 Python 标准 logging 用作记录日志,默认分为六种日志级别(括号为级别对应的数值),NOTSET(0)、DEBUG(10)、INFO(20)、WARNING(30)、ERROR test.log ,内容如下: 13-10-18 21:10:32 root:DEBUG:This is a debug message 13-10-18 21:10:32 root:INFO:This root: level: DEBUG handlers: [console] 复制代码 testyaml.py 文件 import logging.config # 需要安装 pyymal interval=1, backupCount=10) 复制代码 Python 官网虽然说 logging 是线程安全的,但在多进程、多线程、多进程多线程环境中仍然还有值得考虑的问题,比如,如何将日志按照进程 总结:Python logging 设计的真的非常灵活,如果有特殊的需要还可以在这个基础的 logging 上进行改进,创建新的 Handler 类解决实际开发中的问题。

    44020编辑于 2022-01-10
  • 来自专栏me的随笔

    Python日志和配置

    ", settings_files=_cfg_files ) 这样我们就可以把不同环境下的配置项写入到不同的配置文件中了 ---- loguru loguru是一个易于配置和使用的Python日志 : 滚动日志 在生产环境,日志通常会记录到文本中而非仅仅打印到控制台。 ="1 MB" # 每个日志文件的大小,超过该大小则创建新文件 , retention=10 # 保留的日志文件数量,不超过10个 , 来记录日志,需要对日志模块进行替换。 my_logger.py └── main.py 配置如下: server: port: 9001 log: level: INFO encoding: utf-8 rotation: 10

    83230编辑于 2023-07-09
  • 来自专栏晓晨的专栏

    Go 使用 zap 日志

    1.前言 zap 是我个人比较喜欢的日志,是 uber 开源的,有较好的性能。很多开源 Go 项目都使用它作为日志组件。 , enc zapcore.PrimitiveArrayEncoder) { enc.AppendString(t.Format("2006-01-02 15:04:05.000")) } 自定义日志级别显示 // 采用本地时间 Compress: false, // 是否压缩日志 // 是否压缩日志 zapLogger = zap.New(zapCore, zap.AddCaller(), zap.AddCallerSkip(1)) 记得在程序退出时调用 zapLogger.Sync(),不然会造成丢失日志

    1.3K10编辑于 2022-10-04
  • 来自专栏全栈程序员必看

    -日志记录SPDLog简介

    文章目录 spdlog 日志记录槽sink 日志记录器logger 输出格式pattern 对齐方式 截断 字符串格式化fmt Format Specification spdlog使用 异常处理 logger 基础用法 stdout日志 文件日志 基本文件 循环文件 每日文件 示例 spdlog是一款开源的、快速的日志。 spdlog spdlog是基于C++11实现的一款纯头文件的日志管理(git地址:https://github.com/gabime/spdlog,API说明:https://spdlog.docsforge.com l “i” 字符串格式化fmt spdlog中字符串格式化使用fmt(https://github.com/fmtlib/fmt)。 , 10); spdlog::set_default_logger(myLogger); myLogger->set_pattern("[%Y-%m-%d %H:%M:%S.

    9.8K61编辑于 2022-09-10
  • 来自专栏CPP开发前沿

    spdlog日志的使用

    1 spdlog初识 今天介绍一个开源日志,只需要将include下面的文件拷贝到自己的代码目录下,就可以在项目中使用。使用效果如下图所示: 值得注意的是,使用时编译器需要支持C++11。 总体来说具有以下特点: 1、性能快 2、使用简单,只需要包含头文件即可 3、丰富的格式化处理,采用开源fmt,地址:https://github.com/fmtlib/fmt 4、异步模式,支持异步写文件 ;支持控制台日志输出(支持颜色);系统日志;Windows debugger;较容易扩展自定义日志目标; 10、可以通过程序函数入口或者环境变量加载日志级别 11、调试时根据需要对日志进行缓存,并在需要的时候进行输出 console->info("Another binary example:{:n}", spdlog::to_hex(std::begin(buf), std::begin(buf) + 10 auto rotating_sink = std::make_shared<spdlog::sinks::rotating_file_sink_mt>("mylog.txt", 1024*1024*10

    3.5K10编辑于 2021-12-16
  • 技术日志挑战——第10天:0802

    还有就是数据的前世今生的视频看了第3期,主要讲了2000年附近出现的新的数据,还是蛮有意思的。学习笔记:千年虫,又叫做“计算机2000年问题”“电脑千禧年千年虫问题”或“千年危机”。 不管哪一轮的新潮都要想要取代数据,但是每次数据都会更加发展起来。IBM:有自己的系统,绑定硬件一起销售微软:没有unix系统,在window平台上,其他数据没有竞争力。 00年新的数据一、列式数据,sybase,金融客户的发展IQ代表列式数据进入中国的的标志,列式数据 OLTP列数据存储区也称为面向列的DBMS或列式数据管理系统。 列式数据是以列相关存储架构进行数据存储的数据,主要适合于批量数据处理和即时查询。相对应的是行式数据,数据以行相关的存储体系架构进行空间分配,主要适合于大批量的数据处理,常用于联机事务型数据处理。 列存储数据使用一个称为 keyspace 的概念。keyspace 有点像关系模型中的模式。keyspace 包含所有列族(有点像关系模型中的表),其中包含行,包含列。

    19700编辑于 2024-08-02
  • 来自专栏自动化、性能测试

    Python - loguru日志,高效输出控制台日志日志记录

    loguru保留日志文件 一般情况,我们都需要将日志输出保存到文件中,loguru直接通过 add() 方法,就可以配置一个日志文件,如下代码所示: # coding:utf-8 from loguru interface_log_{time}.log", rotation="500MB", encoding="utf-8", enqueue=True, compression="zip", retention="10 {time} 当你需要输出中文日志的时候,请加上 ,避免出现乱码 encoding="utf-8" 代表异步写入,官方的大概意思是:在多进程同时往日志文件写日志的时候使用队列达到异步功效 enqueue =True 可以理解成日志的创建时机,可以有多种写法 :当日志文件达到500MB时就会重新生成一个文件 rotation="500 MB" :每天12点就会创建新的文件、 rotation="12 interface_log_{t}.log", rotation="500MB", encoding="utf-8", enqueue=True, retention="10

    6K10发布于 2020-06-09
  • 来自专栏FunTester

    Zap高性能日志实践

    Zap 是一个由 Uber 公司开源的结构化、高性能日志记录,旨在为 Go 语言提供一种快速、简单且高效的日志解决方案。 Zap 的主要特点如下: 高性能:Zap 在设计时就非常注重性能,比标准 log 包快几个数量级,即使在高并发场景下也能保持出色的性能表现。 通过 Zap,开发者可以获得高效、灵活且易于管理的日志解决方案,从而更好地监控和调试应用程序。 下面我们来进行zap日志的上手实践。 sugar 在 zap 日志中,除了提供高性能、结构化的日志记录功能外,还提供了一个简化的日志记录接口,称为 “Sugared Logger”。 Filename: "logs/app.log", MaxSize: 10, // 每个日志文件最大 10 MB MaxBackups:

    84510编辑于 2024-06-18
  • 来自专栏Golang语言社区

    Golang语言--日志glog解析

    glog简介 glog是著名的google开源C++日志glog的golang版本,glog是一个轻量级的日志,上手简单不需要配置文件并且稳定高效,但是可以自定义控制的内容就少了。 vlog简介 一般的日志会提供日志输出级别,当日志信息的级别低于输出级别时则不会输出该日志信息。 我们使用其他日志时会使用log.Debug()打印出调试信息,在测试环境下将日志的输出级别设置为DEBUG,调试信息就会输出便于我们查看程序的具体运行情况,而在线上程序中将日志的输出级别设置为INFO 修改glog源码 glog有些功能与我们常用的日志不太一样或者没有我们期望的功能,可以修改glog的源码来实现我们的需求。 比如我们之前使用的日志是有DEBUG INFO ERROR FATAL级别的,我们可以修改glog源码增加DEBUG级别,删除WARN级别,已于我们的原有系统保持一致。

    2.2K60发布于 2018-03-21
  • 来自专栏全栈程序员必看

    spdlog 日志学习,简易封装

    (strrchr(__FILE__, '/') + 1):__FILE__) #endif //定义一个在日志后添加 文件名 函数名 行号 的宏定义 #ifndef suffix #define suffix BaseLog* getInstance() { static BaseLog instance; return &instance; } //初始化日志 ,路径使用locale编码 //如: QString("日志.log").toLocal8Bit().toStdString() void init(const std::string& %e] 时间 //[%l] 日志级别 //[%t] 线程 //[%s] 文件 //[%#] 行号 //[%!] :%#] %v"); //设置当出发 err 或更严重的错误时立刻刷新日志到 disk logPtr->flush_on(spdlog::level::trace);

    1.8K30编辑于 2022-09-10
领券