javascript - Javascript:如何遍历日志文件
问题描述
我有一个 .log 文件,它只是被称为对象的行store_data.log
:
{"name": "Fred", "id": 31323, "favorited": false}
{"name": "Chris", "id": 33123, "favorited": true}
{"name": "Mike", "id": 33223, "favorited": true}
有一个相应的文件,store_data.json
其中包含日志文件路径:
{
"log_path": "/intua/store_data.log"
}
在我的 JS 文件中,我想创建一个函数来获取路径并遍历日志信息,但我不确定从哪里开始,因为日志文件不是我知道如何使用的格式。
解决方案
首先读取你的文件,用'\n'分割,然后迭代解析它。
const fs = require('fs');
const config = require('store_data.json'); // load config,
const logPath = config.log_path;
(async() => {
const data = await fs.readFileSync(logPath, 'utf-8');
const logs = data.split('\n');
Array.from(logs).forEach(logString => {
const log = JSON.parse(logString);
console.log(log); // Your log here.
})
})();
顺便说一句,如果您的日志文件很大,那么 readline 或 stream 会更好。
推荐阅读
- java - 无法在 hadoop 中运行 Java 代码。获取 javac:无效标志错误
- java - Android:如何访问最近使用的表情符号?
- sql - 在 SQL 中创建视图(为每种情况选择表)
- javascript - 如何在创建资源请求时附加处理程序?(例如img源,CSS文件)
- django - Django 用户默认权限
- c# - 我的 Blazor 服务器应用程序在一台本地计算机上的 Azure B2c 登录时遇到空引用错误,但在另一台本地计算机上没有,有什么想法吗?
- java - 当我使用 Java 时,程序会跳过数组中的一个值
- flutter - 如何将一个类的价值用于另一类?
- c++ - 使用 C++ 中非 const 引用的构造函数捕获异常类型
- javascript - 如何将具有动态键名和嵌套数组的对象数组简化为更简单的格式?