问题标签 [log-analysis]
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.
java - 如何减少java中大文件的日志分析时间
我必须分析不同的日志文件,包括检索时间戳、URL 等。我为此使用了多线程。每个线程都在访问不同的日志文件并执行任务。这样做的程序:
现在在扩展 Thread 的 MultithreadedThroughput 类中,我正在使用BufferedReader读取文件。整个过程大约需要 15 分钟(每个文件大小约为 2GB)。我想以这样一种方式优化程序,使其花费更少的时间。
我认为的解决方案不是在所有日志文件上启动线程,而是一次获取一个大日志文件,将大文件分成块(块数等于处理器数),然后在它们上启动线程或其他解决方案拥有与以前相同的程序,但不是一次读取一行,而是一次读取多行并进行分析。但我不知道其中任何一个。请解释解决方案。
在 calculateThroughput 方法中,我必须以每小时为间隔估计 URL 的吞吐量。所以假设如果我根据处理器的数量打破文件,那么它可能会在一个间隔之间中断,即假设间隔从 06.00.00 到 07:00:00(一个间隔)像这样它们将是 24 个间隔(一天)每个日志文件。因此,如果我破坏了一个大的日志文件,它可能会在一个时间间隔之间中断,如果它这样做了,那么计算我将如何做的时间间隔。这就是我在拆分文件时面临的问题。
regex - 错误日志分析——Apache、Nginx
我想从 Nginx 和 Apache 的错误日志中进行分析。只计算最错误的是什么。对于计数 Access.logs,我找到了这个脚本:
但我不能正则表达式并且对 awk 的经验为零。
parsing - goaccess 日志解析非常简单的日志不起作用
我在这个社区的第一个问题,希望这里会很棒!
主题:我有这个非常简单的日志文件,按以下方式构建
以及以下用于 goaccess 的配置文件
附带问题:
- 我可以找到几种不同的方法来编写配置文件。在文档中可以找到令我困惑的date_format和log_format的变量声明。哪个是正确的?
由于我查看了与该主题相关的所有问题,因此找不到错误的原因
该文档还指出,正确解析只需要 %h、"%r" 和 %d。我错过了什么?
添加。信息
- CentOS 7 64位
- GoAccess 0.8.5
我知道截至今天的最新版本是 0.9.2。出于“原因”,我无法自己构建最新版本。所以也许这是一个取决于版本的问题(?)。
curl - Flume / Elasticsearch 创建新索引并忽略显式创建的索引
我们在 Elasticsearch 中创建了一个索引如下,索引名称是 apachelog,动态映射设置为“strict”,我们将 httpresponse 字段设置为整数类型:
我们的flume ElasticSearch sink配置如下,注意索引名称是apachelog,与ES中已经创建的索引相同:
写入 ElasticSearch
现在,当我们启动并运行 Flume 代理时,我们注意到在 ElasticSearch 中创建了一个名为apachelog-2015-09-09的新索引,并且字段httpresponse的数据类型是string。我们注意到 Flume/ES 正在向新创建的索引添加文档,而我们显式创建的名为 apachelog 的索引处于休眠状态。
知道为什么会发生这种情况以及我们如何让 Flume/ES 使用我们的索引而不是创建自己的索引吗?
hadoop - 使用hadoop进行日志分析,发现错误场景和频繁的重复事务
我有一个业务场景,其中我想要我的应用程序服务器日志,并且我想要完成以下任务 -
- 找出日志中捕获的错误场景以查找错误代码[在日志中]、异常原因、时间。
- 某些用户进行的重复交易可能是安全漏洞。
- 发生上述两种情况时提醒管理员。
我可以使用一些具有批处理的多线程基本 Java 应用程序来做到这一点,但我想使用大数据技术来做到这一点,并且还希望有一些应用程序行为的图形表示。
有人可以建议我使用最好的技术来实现这个非常快速和可扩展的吗?如果可能的话,如何做到这一点的架构?
如果有人帮忙,那就太好了
apache-spark - Pyspark iphython 笔记本错误
这是 Databricks spark 教程中使用 pyspark 程序进行的简单日志分析:
我收到以下错误:
你能建议我这里似乎有什么问题吗?我是这个领域的新手。如果你也写一个解释会很有帮助。
python - 用于管理和自动化 telnet 会话和日志分析的编程语言?
我发现自己在一个十字路口。我想自动化一些过程,主要包括:与 Linux 操作系统的telnet 会话和解释(自动)来自 Linux 机器的日志文件。
我承认这是一个关于经验的问题,而不是一个具体的技术问题。
我的问题是:哪种编程语言最适合我的需求?
到目前为止我分析的内容(可能性):
Python,使用 logtools 库。
日志分析专用解决方案:LogParser、LogExpert 其他基于 Web 的解决方案等(通常不包括 telnet 会话选项或不适用于嵌入式 Linux 板,这就是我使用的)。
Expect 脚本(用于日志提取)与 Python 日志解释器的组合。我希望为整个过程提供一个单一的环境。*我设法将 Expect 用于一些基本的命令序列。
更具体地说,我将给出一个理论示例(动作序列):
创建 telnet 会话 -> 提供凭据 -> 发送命令 -> 保存命令输出 -> 分析/提取/解释输出中的部分。
日志解释不是微不足道的,它可能需要:控制结构、算术运算、图形表示等。
添加的问题:Python 是否会对上述要求施加一些限制/困难?
您的意见将不胜感激!
谢谢!
analytics - Bluemix 监控和分析:资源监控 - JsonSender 请求错误
我在使用 Bluemix 监控和分析服务时遇到问题。我有 2 个应用程序绑定到单个监控和分析服务。每隔约 1 分钟,我在两个应用程序中都会收到以下日志行:
ERR [资源监控] [错误]:JsonSender 请求错误:错误:不支持的证书用途
当我删除绑定时,不会出现日志消息。我还在我的代码中查找了与“JsonSender”或“资源监控”相关的任何内容,但没有找到任何内容。
我正在我们的服务器上做一些重大的重构工作,这可能会破坏一些东西。但是,我们的代码不直接使用监控服务(我们没有连接到监控服务器的包或类似的东西) - 所以如果问题是由于重构更改引起的,我会感到非常惊讶。在进行更改之前,我没有检查日志。
任何想法都会有所帮助。
log-analysis - 根据 Logs 中的关键字实时触发动作
我有一个要求,如果在日志中找到关键字,我想触发一个操作(例如调用 REST-ful 服务)。触发器必须是相当实时的。我正在评估GrayLog2、ELK 堆栈(我认为无法实时分析)、fluentd等开源解决方案,但想知道您对此的看法。如果该工具还允许针对关键字设置规则以消除误报并易于设置,那就太好了。
我希望这是有道理的,如果这已在其他地方讨论过,我深表歉意!
user-interface - 用于过滤多个维度的日志行的 Web 或控制台 UI?
我正在编写一个工具来帮助分析小型日志文件(例如 1-2 MB,在极少数情况下高达 50 MB)。
日志文件来自文件同步应用程序,并包含各种不同的日志行:
我将解析任何键值对以及几个键属性(例如 inode 编号、文件名、doc_id)
然后,我想要一个 UI(控制台或 Web UI),它可以让您按各种内容进行过滤,并显示完整的日志:
- 按时间范围过滤
- 按 inode 编号、文件名、事件类型等过滤。
是否有任何现有的 UI 元素/工具包/框架可以轻松地沿多个维度进行过滤?
例如,您可以选择一个 inode 编号和事件类型,然后查看该组合的完整历史记录?
可能类似于 Splunk/Kibana 和同类允许您使用的功能,但可以作为独立组件使用?(控制台或网络)