一.日志分析
如果apache的安装时采用默认的配置,那么在/logs目录下就会生成两个文件,分别是access_log和error_log
1).access_log
access_log为访问日志,记录所有对apache服务器进行请求的访问,它的位置和内容由CustomLog指令控制,LogFormat指令可以用来简化该日志的内容和格式。
218.19.140.242 //请求到apache服务器的客户端ip - - [10/Dec/2010:09:31:17 +0800] //记录请求的时间,最后的+0800表示服务器所处的时区为东八区 "GET /query/trendxml/district/todayreturn/month/2009-12-14/2010-12-09/haizhu_tianhe.xml HTTP/1.1" //服务器收到的是一个GET请求,其次,是客户端请求的资源路径,第三,客户端使用的协议时HTTP/1.1,整个格式为"%m %U%q %H",即"请求方法/访问路径/协议" 200 //状态码 1933 //表示服务器向客户端发送了多少的字节 "-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8 (.NET CLR 3.5.30729)" //客户端的浏览器信息
2).error_log
error_log为错误日志,记录下任何错误的处理请求,它的位置和内容由ErrorLog指令控制,通常服务器出现什么错误,首先对它进行查阅,是一个最重要的日志文件。
[Fri Dec 10 15:03:59 2010] [error] [client 218.19.140.242] File does not exist: /home/htmlfile/tradedata/favicon.ico
二.实用的日志分析命令和脚本
了解日志的各种定义后,这里分享一下从网上淘来的一些对日志分析的脚本。
1.查看apache的进程数
ps -aux | grep httpd | wc -l
2.分析日志查看当天的ip连接数
cat default-access_log | grep "10/Dec/2010" | awk '{print $2}' | sort | uniq -c | sort -nr
3.查看指定的ip在当天究竟访问了什么url
cat default-access_log | grep "10/Dec/2010" | grep "218.19.140.242" | awk '{print $7}' | sort | uniq -c | sort -nr
4.查看当天访问排行前10的url
cat default-access_log | grep "10/Dec/2010" | awk '{print $7}' | sort | uniq -c | sort -nr | head -n 10
5.看到指定的ip究竟干了什么
cat default-access_log | grep 218.19.140.242 | awk '{print $1"\t"$8}' | sort | uniq -c | sort -nr | less
6.查看访问次数最多的几个分钟(找到热点)
awk '{print $4}' default-access_log |cut -c 14-18|sort|uniq -c|sort -nr|head
相关推荐
这个软件能够帮助IT管理员和开发者有效地理解和解析Apache服务器生成的日志文件,从中提取出关键信息,如访问记录、错误报告以及性能指标。日志分析在维护网站稳定性和优化服务器性能方面起着至关重要的作用。 首先...
Apache 提供了一种名为 `rotatelogs` 的工具,它是一个与 Apache 一起安装的小型实用程序,可以自动创建和管理日志文件。通过使用 `rotatelogs`,我们可以根据时间间隔(如每日或每小时)来切割日志,从而使得日志...
### Apache Log的每日一个日志文件及选择性记录设置 #### 概述 在实际运维过程中,Apache服务器的日志文件可能会因为访问量过大而变得异常庞大,这不仅占用大量磁盘空间,还会影响日志分析的效率。为了解决这一...
在Hive中,首先我们需要创建一个外部表来指向`apache_log.txt`文件,定义表的字段与日志文件中的列相对应。例如,表结构可能包含以下字段: 1. `ip`:客户端IP地址,字符串类型。 2. `timestamp`:访问时间,日期...
cronolog是一个用于日志切分的工具,它可以根据日期和时间将日志文件分割成不同的小文件。 1. **access.log日志切分**: 将`CustomLog`指令中的日志路径改为通过cronolog执行,例如: ```apacheconf CustomLog ...
这个“log4j简单范例 日志文件是相对路径的”示例将展示如何配置Log4j来记录日志,并将日志文件保存在程序运行时的相对路径下。 首先,Log4j的核心组件包括Logger(日志器)、Appender(输出目的地)和Layout(格式...
Apache日志主要分为访问日志(access logs)和错误日志(error logs)。访问日志记录了每个HTTP请求的信息,如客户端IP地址、时间戳、请求方法、请求的URL、HTTP协议版本、响应状态码、发送给客户端的数据量等。错误...
Apache作为全球最流行的Web服务器之一,其日志文件包含了大量的访问信息。然而,直接阅读和分析这些原始日志文件是一项耗时且复杂的任务。这时,awStats作为一个强大的开源日志分析工具,便应运而生。 awStats能够...
这意味着,服务器日志文件、配置文件等都将位于这个目录或其子目录中。 - **注意事项**:如果使用了网络文件系统(NFS),必须确保此路径在NFS挂载点下可用,并且有正确的锁文件配置。 ##### 2. LockFile - **定义*...
`pattern`中的日期部分可以使用`java.text.SimpleDateFormat`的格式,比如`yyyy-MM-dd`,这样日志文件就会以`tomcat-uid-2022-06-01.log`的形式命名,每天一个新的文件。 如果使用Log4j,可以在`log4j.properties`...
在本案例中,我们有一个名为"日志文件压缩包.zip"的压缩文件,它包含与Apache相关的日志资料。Apache是一个广泛应用的开源Web服务器,其日志文件对于理解和优化服务器性能、排查问题至关重要。 首先,我们需要了解...
在Windows操作系统中,管理和维护Apache Tomcat服务器的日志文件是一项重要的任务。日志文件记录了应用程序的运行状态、错误信息以及调试数据,对于诊断问题和优化性能至关重要。然而,随着服务器运行时间的增长,...
这里的`datePattern`属性指定了日志文件的命名规则,`.'yyyyMMdd'.log`表示每天一个文件,例如`app.20220101.log`。 **4. 自定义删除逻辑** 虽然RollingFileAppender可以按日期滚动,但不会自动删除旧文件。我们...
- **说明**:通常包含配置文件、日志文件等重要组件。 ##### 3. PidFile - **功能描述**:指定存放Apache进程ID的文件位置。 - **配置示例**:`PidFile run/httpd.pid` - **说明**:便于管理服务进程,如重启或...
`${catalina.home}`是Tomcat服务器的安装目录,这意味着日志文件会存储在Tomcat的logs子目录下。`DailyRollingFileAppender`会根据日期自动滚动日志,保持日志文件大小在可管理范围内。 为了使配置生效,我们需要在...
- 如果是自定义安装路径,则日志文件可能位于如`/usr/local/apache/logs`。 **示例路径:** - `../../../../../../../../../../var/log/httpd/access_log` - `../../../../../../../../../../var/log/httpd/error_...
- ServerRoot参数:指定服务器的安装基础目录,这个目录通常包含配置文件的子目录conf/和日志文件的子目录logs/。其他配置文件的路径都是以ServerRoot为基准。 - DocumentRoot参数:设置网络上可见的主文档树的根...
本文将详细介绍如何在Tomcat服务器环境下使用Log4j接管生成日志文件。 首先,了解Log4j的核心组件: 1. **Logger**:负责生成日志信息,是使用最频繁的部分。 2. **Appender**:负责将日志信息输出到指定的目标,如...
darks-logs可能是遵循某种开源许可证,如Apache License 2.0或MIT License,允许开发者在遵守特定条件的情况下自由使用和修改代码。 3. **README.md**:这是一个Markdown格式的文件,通常包含项目的基本信息、安装...
总的来说,通过适当配置日志框架,我们可以将CXF的服务报文日志记录到文件中,这有助于我们在不干扰正常运行的情况下收集和分析日志信息,对于优化服务性能、追踪问题以及满足合规性要求都具有重要意义。