首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏神光的编程秘籍

    为什么 Node 里要用 Winston 打印日志?

    我们试试看: mkdir winston-test cd winston-test npm init -y 先创建个项目。 安装 winston: npm install --save winston 然后写下 index.js import winston from 'winston'; const logger = 然后改下代码: import winston from 'winston'; import 'winston-daily-rotate-file'; const logger = winston.createLogger 可以这样: import winston from 'winston'; const logger = winston.createLogger({ level: 'debug', transports file', { format:winston.format.combine( winston.format.timestamp(), winston.format.json

    93220编辑于 2023-10-29
  • 来自专栏云计算教程系列

    如何使用Winston记录Node.js应用程序

    第三步, 安装和配置Winston 我们现在准备安装和配置Winston。在这一步,我们将探讨作为winston软件包的一些配置选项,并创建一个将信息记录到文件和控制台的记录器。 要安装,请winston运行以下命令: $ cd ~/myApp $ npm install winston 创建一个包含winston配置的config文件夹: $ mkdir ~/myApp/config 现在让我们创建包含我们winston配置的文件,我们将调用它winston.js: $ touch ~/myApp/config/winston.js 接下来,创建一个包含日志文件的文件夹: $ mkdir 首先打开~/myApp/config/winston.js编辑: $ nano ~/myApp/config/winston.js 接下来,需要app-root-path和winston包: ~/myApp /config/winston'); ... 我们实际使用winston的第一个地方是morgan。我们将使用stream选项,并将其设置为我们在winston配置中创建的流接口。

    6.6K61发布于 2018-07-25
  • 来自专栏Nest.js 实战系列

    Nest.js 实战 (十):使用 winston 打印和收集日志记录

    今天我们就看看在 Nest 服务中应该如何使用 Winston 记录日志。 生成日志 我们需要安装几个依赖: winston:一个通用的日志记录库,为 Node.js 应用提供灵活的日志记录功能 nest-winston: 一个用于 winston 的 Nest 模块包装器 winston-daily-rotate-file: 用于将日志文件按天轮换保存 chalk: 用于在终端中输出带有颜色的文本 终端执行命令: pnpm add winston nest-winston winston-daily-rotate-file chalk@4 新建 winston 配置文件: import chalk from 'chalk'; // 用于颜色化输出 import { createLogger , format, transports } from 'winston'; import DailyRotateFile from 'winston-daily-rotate-file'; // 定义日志级别颜色

    1.6K10编辑于 2025-08-15
  • 来自专栏前端

    工具与技术在 Debug 中的应用

    初始化日志工具代码片段:const logger = winston.createLogger({ level: "info", format: winston.format.combine( winston.format.timestamp(), winston.format.printf(({ timestamp, level, message }) => { return new winston.transports.File({ filename: "debug.log" }), ],});目的:通过 winston 创建一个日志记录器,帮助开发者记录应用的关键事件 可以添加更多的 winston.transports,例如日志轮转、日志级别过滤等。为什么选择 WinstonWinston 提供了简单的 API 和丰富的扩展功能,适合 Node.js 环境。 参考资料Winston 官方文档Express 官方文档

    63210编辑于 2024-11-28
  • 来自专栏飞鸟的专栏

    kubernetes安装loki,作为日志收集平台

    假设我们有一个Node.js应用程序,其日志输出使用winston模块进行配置。 const winston = require('winston');// 引入winston-loki插件require('winston-loki');// 配置Loki的地址和端口const lokiUrl = 'http://loki.loki.svc.cluster.local:3100/api/prom/push';// 配置winstonconst logger = winston.createLogger ({ transports: [ new winston.transports.Console(), new winston.transports.Loki({ level: ' ;在上述代码中,我们使用winston-loki插件将日志发送到Loki。我们将Loki的地址和端口配置为loki.loki.svc.cluster.local:3100/api/prom/push。

    2.1K20编辑于 2023-03-29
  • 来自专栏京程一灯

    [每日前端夜话0xBB]

    要克服所有这些问题,可以使用 Winston 日志框架,还有其他一些选项,如Bunyan,Pino等。 为什么需要像 Winston 这样的日志库? 在上一节中我们讨论了控制台的一些缺陷,让我们列出 Winston 提供的一些重要功能: 级别: Winston 提供了几组日志级别,并且还将级别打印为日志的一部分,这可以使我们能够在集中式仪表板中过滤日志 Winston 具有这种开箱即用的功能。 // log setup import winston from 'winston'; const transports = { console: new winston.transports.Console import winston from 'winston'; const logger = winston.createLogger({ level: 'info', format: winston.format.json

    87110发布于 2019-09-10
  • 来自专栏linux运维

    Node.js 微服务内存泄漏的排查与解决

    require('express');constjwt=require('jsonwebtoken');constredis=require('redis');constwinston=require('winston ');constapp=express();//日志配置constlogger=winston.createLogger({level:'info',format:winston.format.combine (winston.format.timestamp(),winston.format.json()),transports:[newwinston.transports.Console()],});// 日志是救星:winston帮我记录了Redis错误和请求细节,定位问题快得多。监控不可少:Prometheus和Grafana的内存曲线是发现问题的第一步,生产环境必须配监控。

    34110编辑于 2025-08-31
  • 来自专栏京程一灯

    Node.js 应用最佳实践:日志[每日前端夜话0xBB]

    要克服所有这些问题,可以使用 Winston 日志框架,还有其他一些选项,如Bunyan,Pino等。 为什么需要像 Winston 这样的日志库? 在上一节中我们讨论了控制台的一些缺陷,让我们列出 Winston 提供的一些重要功能: 级别: Winston 提供了几组日志级别,并且还将级别打印为日志的一部分,这可以使我们能够在集中式仪表板中过滤日志 Winston 具有这种开箱即用的功能。 // log setup import winston from 'winston'; const transports = { console: new winston.transports.Console import winston from 'winston'; const logger = winston.createLogger({ level: 'info', format: winston.format.json

    1.6K20发布于 2019-09-10
  • 学习NestJS开发小程序后台(一)

    以下是一种添加错误日志的方法:一、安装日志库可以使用winstonwinston-daily-rotate-file库来实现日志记录。 npm install winston winston-daily-rotate-file二、创建日志服务创建一个日志服务来处理日志记录。 from 'winston';import 'winston-daily-rotate-file';@Injectable()export class LoggerService implements ({ level: 'info', format: winston.format.combine( winston.format.timestamp(), winston.format.json(), ), transports: [ new winston.transports.Console(), new

    1.4K20编辑于 2024-09-12
  • 来自专栏Web 技术

    Node.js 应用的御用品: Node.js 错误处理系统

    这里,我向你推荐 winston 或 morgan 这样的可定制记录器。 ( winston.format.colorize(), winston.format.timestamp({ format: 'YYYY-MM-DD HH:mm:ss' }), winston.format.splat JSON.stringify(meta, null, 2) : '' }`; }), ); class Logger { private logger: winston.Logger; , }); this.logger = winston.createLogger({ level: isDevEnvironment() ? 这样做的好处是,你可以使用 winston 的内置 api 来监视和查询日志。此外,你可以使用日志分析工具来分析格式化的日志文件,以获得有关应用程序的更多有用信息。

    90120编辑于 2023-10-07
  • 来自专栏信息技术智库

    「SQL面试题库」 No_121 The Most Recent Three Orders

    ``` Customers +-------------+-----------+ | customer_id | name | +-------------+-----------+ | 1 | Winston Jonathan | 2 | 6 | 2020-08-01 | | Jonathan | 2 | 2 | 2020-07-30 | | Marwan | 4 | 4 | 2020-07-29 | | Winston | 1 | 8 | 2020-08-03 | | Winston | 1 | 1 | 2020-07-31 | | Winston | 1 | 10 | 2020-07-15 | +--------- ------+-------------+----------+------------+ Winston has 4 orders, we discard the order of "2020-06-

    30830编辑于 2023-10-16
  • 使用Puppeteer进行数据抓取保存为JSON

    可以使用winston或bunyan等日志库来实现日志记录:以下是使用winston记录日志的示例:const winston = require('winston');const logger = winston.createLogger ({ level: 'info', format: winston.format.json(), transports: [ new winston.transports.File({ filename

    67910编辑于 2024-07-09
  • 来自专栏少年郎编程之路

    前端开发使用GraphQL——Nestjs/GraphQL项目搭建

    carbon (5).png 二、引入winston日志服务 服务在服务端运行的时候,打印的一些日志需要记录下来,方便查问题,本地使用的时候,只需要使用console。 在服务端使用的时候,还是使用winston等成熟的日志组件,打印下来日志文件,方便查问题。 carbon (8).png 在main.ts里面引入winston的logger,替换掉nest的Logger模块的默认行为,其他地方还是可以正常的注入nest的Logger模块,Nest 会使用winston去处理日志的打印请求。 具体可以参考nest-winston 三、封装调用后台服务的模块 目前暂时我们还是使用http去调用后台的服务,实际调用的时候,需要先获取调用的后台模块的IP与端口,然后调用完成了还需要做模调上报

    2.1K50发布于 2021-06-15
  • 来自专栏Michael阿明学习之路

    LeetCode MySQL 1532. The Most Recent Three Orders(dense_rank + over窗口函数)

    +-------------+-----------+ | customer_id | name | +-------------+-----------+ | 1 | Winston | 2 | 2 | 2020-07-30 | | Marwan | 4 | 4 | 2020-07-29 | | Winston | 1 | 8 | 2020-08-03 | | Winston | 1 | 1 | 2020-07-31 | | Winston | 1 | 10 | 2020-07-15 | +---------------+-------------+----------+- -----------+ Winston has 4 orders, we discard the order of "2020-06-10" because it is the oldest order

    73530发布于 2021-02-19
  • 来自专栏网罗开发

    构建混合技术栈的统一监控与日志平台

    Node.js 日志收集模块Node.js 示例代码详解:const winston = require('winston');require('winston-logstash');// 配置日志传输到 Logstashconst logger = winston.createLogger({ transports: [ new winston.transports.Logstash logger.info('Application started');logger.warn('This is a warning');logger.error('This is an error');详解:Winston Logstash 插件:winston-logstash 用于将日志发送到 Logstash。配置 port 和 host 用于连接到 Logstash。 hosts => ["localhost:9200"] index => "logs-%{+YYYY.MM.dd}" }}详解:输入模块:tcp: 监听来自 Node.js 的日志,端口与 winston-logstash

    75400编辑于 2024-12-30
  • 2025实时高频外汇报价API 对比

    all-example/blob/main/nodejs/README.md// 导入必要的模块const WebSocket = require('ws'); // WebSocket客户端模块const winston = require('winston'); // 日志记录模块// 配置日志记录器const logger = winston.createLogger({ level: 'info', // 设置日志级别为info format: winston.format.combine( // 添加时间戳,格式为:年-月-日 时:分:秒.毫秒 winston.format.timestamp ({ format: 'YYYY-MM-DD HH:mm:ss.SSS' }), // 自定义日志输出格式 winston.format.printf (), // 输出到控制台 new winston.transports.File({ filename: 'gold-price.log' }) // 输出到文件 ]});/**

    2.6K10编辑于 2025-04-13
  • 来自专栏Michael阿明学习之路

    LeetCode MySQL 1517. Find Users With Valid E-Mails(正则表达式)

    name | mail | +---------+-----------+-------------------------+ | 1 | Winston | winston@leetcode.com | | 2 | Jonathan | jonathanisgreat | | 3 | Annabelle name | mail | +---------+-----------+-------------------------+ | 1 | Winston | winston@leetcode.com | | 3 | Annabelle | bella-@leetcode.com | | 4 | Sally

    95420发布于 2021-02-19
  • 来自专栏服务器运维笔记

    使用 Node 开发服务器项目时如何高效地打日志?

    Node 在服务端更好地打日志 哪里应该打日志: AccessLog、SQLLog、BusinessLog 应该打什么日志: server_name、timestamp 以及相关类型日志 用什么去打日志: winston 将在下一章讲解日志的收集处理及检索 目录 目录 日志类型 日志的基本字段 app serverName timestamp requestId/traceId userId Node 中如何打日志: winston { "userId": 10086, // 当用户在未状态时,以 -1 替代 "userId": -1, } Node 中如何打日志: winston winston[3] 是 Node , { format } from 'winston' import os from 'os' import { session } from '. : https://github.com/winstonjs/winston [4] morgan: https://github.com/expressjs/morgan

    1.7K20发布于 2020-07-14
  • 来自专栏网罗开发

    日志不再孤立!用 Jaeger + TraceId 实现链路级定位

    安装依赖npm install @opentelemetry/api @opentelemetry/sdk-node @opentelemetry/auto-instrumentations-node winston getNodeAutoInstrumentations()]});sdk.start();// logger.jsconst { context, trace } = require('@opentelemetry/api');const winston = require('winston');const logger = winston.createLogger({ format: winston.format.printf(({ level, traceId : 'unknown'; return `[${level}] [traceId=${traceId}] ${message}`; }), transports: [new winston.transports.Console

    48500编辑于 2025-07-14
  • 来自专栏信息技术智库

    「SQL面试题库」 No_119 Find Users With Valid E-Mails

    ----------------+ | user_id | name | mail | +---------+-----------+-------------------------+ | 1 | Winston | winston@leetcode.com | | 2 | Jonathan | jonathanisgreat | | 3 | Annabelle | bella-@leetcode.com | ----------------+ | user_id | name | mail | +---------+-----------+-------------------------+ | 1 | Winston | winston@leetcode.com | | 3 | Annabelle | bella-@leetcode.com | | 4 | Sally | sally.come@leetcode.com

    36430编辑于 2023-10-16
领券