Skip to content

egg-logger 日期格式化增加时区信息 #5145

Closed
eggjs/egg-logger
#88

Description

@sjfkai

Enter your suggestions in details:

当前日志里date: "date":"2023-02-14 18:52:35,156" 并不包含时区信息,建议增加时区信息或支持自定义格式化日期字段

Activity

  1. fengmk2 commented on Feb 14, 2023

    @fengmk2
    Member

    你是怎样拿到这个数据的?

  2. sjfkai commented on Feb 15, 2023

    @sjfkai
    ContributorAuthor

    把日志配置改成JSON config.default.js:

    logger: {
        outputJSON: true,
    }

    日志输出 egg-web.json.log:

    {"level":"WARN","date":"2023-02-15 09:15:30,242","pid":88174,"hostname":"xxx","message":"[ClusterClient:Watcher] follower closed, and try to init it again"}

    看了一下 egg-logger 源码:

    meta.date = utility.logDate(',') 类似 moment().format('YYYY-MM-DD HH:mm:ss.SSS')

  3. fengmk2 commented on Feb 15, 2023

    @fengmk2
    Member

    嗯,这里确实是一个问题,默认的是当前服务器所在时区的 local 时间。可以新增一个选型,输出 Date 标准的 JSON 格式。

  4. fengmk2 commented on Feb 15, 2023

    @fengmk2
    Member

    @sjfkai 来尝试pr实现?

  5. sjfkai commented on Mar 1, 2023

    @sjfkai
    ContributorAuthor

    @sjfkai 来尝试pr实现?

    @fengmk2 其实跟 JSON 的关系不大,默认输出的 Data 也有相同问题。
    新的选项如何命名有什么建议吗? dateISOFormat: true ?
    实现上就用 Date.prototype.toISOString() 替换当前的 utility.logDate ?

  6. fengmk2 commented on Mar 1, 2023

    @fengmk2
    Member

    @sjfkai 来尝试pr实现?

    @fengmk2 其实跟 JSON 的关系不大,默认输出的 Data 也有相同问题。 新的选项如何命名有什么建议吗? dateISOFormat: true ? 实现上就用 Date.prototype.toISOString() 替换当前的 utility.logDate ?

    可以的。

  7. added a commit that references this issue on Mar 3, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions