问题标签 [bunyan]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 使用基于快速请求的变量进行日志记录(相关 ID)
我们正在向我们的 node express 应用程序添加相关 ID,以将请求绑定在一起。这个 id 是从其他服务的标头中发送的,我们的中间件收集 id,创建一个带有 id 的 bunyan 记录器并将其添加到请求对象中。
我们的路线目前如下所示:
当前提出的解决方案类似于以下内容:
这意味着doSomething
它调用的每个函数都需要接受日志记录对象作为参数。这意味着几乎每个函数都需要接受一个日志对象。
例如:
有没有更好的方法可以在每个请求的基础上进行此日志记录,而无需将日志记录对象传递给每个函数?
javascript - 将自定义级别添加到 bunyan 实例
我创建了一个 bunyan 的记录器实例
创建此 createLogger 的实例后,我将流添加到 createLogger 实例,如下所示 -
我只是希望能够log.logRequest()
在需要记录的任何地方用作函数。但我不断收到这个错误 -
“记录器”类型上不存在属性“logRequest”
请提出一个答案。
javascript - 创建 bunyan Child Logger 时的路径问题
在这个简单的应用程序中,两个不同的文件foo.js
和bar.js
导入Logger.js
创建了一个bunyan
子记录器。
问题: foo.js
工作完美,但bar.js
在. 这似乎是由于相对路径被固定,而和驻留在相对于项目根目录的不同目录级别。MyService.log
Logger.js
MyService.log
foo.js
bar.js
bunyan
创建子记录器的更好方法是什么?
/src/lib/Logger.js
/src/foo/foo.js
/src/bar.js
typescript - 从具有所有类型信息的另一个模块中导出类型
我有一个包含一个导出的模块。这是创建bunyan记录器的工厂函数:
我想在其他应用程序中使用这个模块,并且我想包含 bunyanLogger
实例的类型信息,以便我们对诸如logger.info
,logger.warn
等内容进行智能感知。
因此,我从 index.ts 文件中导出了工厂函数和 bunyan Logger:
但是,当我在另一个应用程序中导入它时,我可以看到我的 IDE 认为 logger 是类型any
:
这是因为 bunyan 不导出 Logger 类型吗?还是因为在我的应用程序中,我只安装了我的自定义包而不是 bunyan?我希望自定义包的用户不必同时安装我的包和bunyan。
有没有办法解决这个问题,即拥有 bunyan 记录器的智能感知,而无需单独安装 bunyan?
javascript - @sentry/node 集成将 bunyan 日志调用包装为面包屑
默认情况下,Sentry 具有集成,console.log
使其成为面包屑的一部分:
链接:导入名称:Sentry.Integrations.Console
我们如何使它也适用于bunyan logger,例如:
PS我已经尝试过bunyan-sentry-stream但没有成功@sentry/node,它只是推送条目而不是将它们视为面包屑。
python - 如何在 python 中使用 bunyan 为 sysout 日志使用日志记录适配器
我正在尝试将请求号附加到每个请求的日志中:
使用 python 日志记录模块,我可以使用以下命令将 id 附加到每个日志:
使用 Bunyan 伐木
但在 bunyan 文档中,发现附加额外字典的唯一方法如下:
问题是 RequestNumber 必须附加在每个日志命令中。
有什么方法可以将 loggerAdapter 与 bunyan 一起使用?
python - 如何在日志中包含其他参数,例如 python-bunyan 中的函数名、行号、路径名
下面是__init__
bunyan logger的功能。
filename
,funcName
并且lineno
默认被跳过。有什么方法可以通过仍然使用 python-bunyan 来包含它们吗?
node.js - Nodejs 日志记录模块 - 生产环境
我目前正在开发 NodeJS 应用程序项目。
该应用程序基本上执行:
与数据库的交互(每分钟 1000 个请求/响应处理)
使用从数据库获取的信息的服务器端处理逻辑
客户端请求处理(每 5 分钟 100 个请求)
对于任何项目,日志信息都是识别任何故障/处理状态的关键。
我尝试了winston nodejs日志框架,但碰巧它不支持以下信息:
文件名
函数名称
行号
进程 ID
主机名等
因此我决定使用bunyan日志框架。我了解 Bunyan 框架支持这些东西。
请分享您的想法,这是否可以用于生产代码。
如果不可能,我担心许多 Web 应用程序中使用的其他 nodejs 项目如何获取这些信息。
我无法在 nodejs 中获得任何支持这些功能的生产就绪日志框架。我用谷歌搜索信息,搜索结果导致了winston/bunyan。
google-cloud-platform - 使用节点 bunyan 在 GCP 中格式化日志
我试图了解 GCP 中的格式并使用 Bunyan,但找不到任何好的解决方案。我在我的应用程序中创建了一个记录器。
我希望能够用错误代码、有效负载、堆栈和错误消息很好地记录错误。目前我使用这种格式:
但这并不能很好地在 GCP 记录器中格式化我的日志。任何有用的提示我怎样才能很好地格式化日志并使它们更具可读性。