标签: logging

如何在 Apache 上拥有每日错误和访问日志(适用于 Windows)?

我们正在运行 Apache 2.2.9 (Win32),在一台服务器上配置了一些虚拟主机。每个都有自己的 ErrorLog 和 CustomLog 设置,格式为“logs/[域名]-error.log”和“logs/[域名]-access.log”。不幸的是,这些现在正在创建相当大的文件。

在 IIS 上,您可以指定日志计划,它可以将它们置于“yymmdd.log”的每日格式中。我可以在这里做类似的事情吗?

也不一定是每天,每周或每月都可以。我只想将它们分解,以便我们可以保留 X 数量而不是它曾经记录的所有内容。一个快速的谷歌似乎提出了许多面向 Linux 的答案,涉及日志拆分器、脚本和 cron 作业,这对 Windows 安装没有太大帮助。

更新

感谢radius,我调整了我的httpd-vhosts.conf以使用Apache 内置的rotatelogs命令,格式如下:

ErrorLog "|bin/rotatelogs logs/[domain name]-error.%Y-%m-%d-%H_%M_%S.log 5M" CustomLog "|bin/rotatelogs logs/[domain name]-access.%Y-%m-%d-%H_%M_%S.log 5M" common

当当前日志文件达到 5MB 时,他们将创建一个新的日志文件。我知道这不是每天所要求的,但这可以使它们保持在可管理的规模上。几秒钟后我确实尝试了旋转,但它似乎没有正确地将时间戳记放在文件名中(特别是小时、分钟和秒)。

windows logging apache-2.2

11
推荐指数
1
解决办法
3万
查看次数

定期跟踪哪些日志

我在家里为我的个人网站运行我自己的服务器,运行带有 Apache、Bind9 和 Django 的 Ubuntu Server。您建议最好定期跟踪哪些日志?(而不是在出现问题时阅读)。我正在考虑检测入侵尝试(我以前遇到过 SSH 错误)和我网站上的异常流量或错误。

ubuntu log-files logging

11
推荐指数
1
解决办法
950
查看次数

好的免费 Tomcat 日志分析器?

有人可以推荐一个好的免费程序来分析 Apache Tomcat 日志。我不需要实时分析或类似的东西。我有一个日志,我只是想要一种快速简便的方法来从中获取一些使用情况统计信息。统计数据甚至不必太花哨——我只想粗略了解每天、每周和每月的独特用户。

谢谢,

巴特。

tomcat log-files logging

11
推荐指数
1
解决办法
2万
查看次数

黑客预防、取证、审计和反措施

最近(但它也是一个反复出现的问题)我们看到了 3 个关于黑客和安全的有趣主题:

如何处理受感染的服务器?.
查找被黑服务器是如何被黑的
文件权限问题

最后一个没有直接关系,但它强调了搞乱 Web 服务器管理是多么容易。

由于有几件事情可以做,不好的事情发生之前,我想就限制攻击的背面影响的良好实践以及如何在不幸的情况下做出反应方面提出您的建议。

这不仅仅是保护服务器和代码的问题,也是审计、日志记录和反措施的问题。

您是否有任何好的做法列表,或者您更喜欢依赖软件或专家来持续分析您的 Web 服务器(或根本不分析)?

如果是,你能分享你的清单和你的想法/意见吗?

更新

我收到了几个很好的和有趣的反馈。

我想要一个简单的列表,这样既可以方便 IT 安全管理员使用,也可以方便网络事实管理员。

即使每个人都给出了很好和正确的答案,但目前我更喜欢Robert的一个,因为它最简单、清晰和简洁,而sysadmin1138的一个最完整和精确。

但是没有人考虑用户的观点和感知,我认为这是首先必须考虑的。

用户在访问我被黑网站时会怎么想,如果您拥有有关他们的合理数据,则更多。这不仅仅是在何处存储数据的问题,而是如何安抚愤怒的用户的问题。

数据、媒体、权威和竞争对手呢?

security hacking logging

11
推荐指数
2
解决办法
2624
查看次数

postgres 内部日志轮换机制可以删除超过一定时间的日志文件吗?

我正在使用 posgtres 的内部日志轮换机制。我希望删除超过 30 天的日志文件。我如何让 postgres 做到这一点?如果 postgres 不支持它,我可以将 logrotate 设置为只删除 30 天以上的日志吗?

我目前的配置是:

log_destination = 'stderr'             
logging_collector = on
log_directory = 'pg_log'                
log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log' 
#log_truncate_on_rotation = off 
log_rotation_age = 1440         
log_rotation_size = 0    
Run Code Online (Sandbox Code Playgroud)

postgresql log-files logging logrotate

10
推荐指数
1
解决办法
1万
查看次数

访问日志中的空/空 Apache 请求条目

此条目已记录在 Apache 访问日志中:

IP 地址 - - [00/00/0000:00:00:00 -0000] " " 301 - "-" "-"

它被 LogWatch 检测为空的 HTTP 响应,也被标记为成功的探测。

我很好奇这个请求是如何提出的,以及它如何被认为是一个成功的调查。以下是我可以通过特定问题破译的内容:

  1. 他们的要求是“”——这是什么意思?
  2. HTTP 返回码是 301:这个网站在 Apache 配置中定义了一个重定向——也许他们正在点击触发这个重定向的 URL?
  3. 他们没有使用正确的 HTTP 请求
  4. 他们得到了“-”尺寸的回报——这是什么意思?

logging logwatch 301-redirect apache-2.2

10
推荐指数
1
解决办法
4991
查看次数

*nix 用于存储用户日志的约定?

代表用户运行的进程的常规日志位置是什么?

  • ~/.foo/logs/ - 我的首选,但不是超级棒

  • /var/log/foo.uid/ — 非系统用户不能在这里创建目录,首先需要合作创建。

  • /var/log/(例如/var/log/foo.log)中的公共文件- 非私有

  • 等等。

linux unix logging

10
推荐指数
1
解决办法
535
查看次数

Windows 7 和打印作业日志记录

是否可以在 Windows 7 中记录打印作业?我只能启用没有打印作业事件的 PrintService 日志。

windows-7 printing logging

10
推荐指数
1
解决办法
5万
查看次数

是否可以从 ESXi 中查看 HP ProLiant 服务器 IML 日志?

我正在调查运行 VMware ESXi 5.1的HP ProLiant DL360 G7服务器上的系统中断。

虽然我非常提倡为 ESXi 安装 HP 特定的管理代理或使用自定义的 .ISO 映像,但我从未注意到我在其他平台上使用的一些命令行实用程序丢失了:

#  esxcli software vib list| grep -i hewlett
char-hpcru                     5.0.3.09-1OEM.500.0.0.434156        Hewlett-Packard  PartnerSupported  2013-01-24  
char-hpilo                     500.9.0.0.9-1OEM.500.0.0.434156     Hewlett-Packard  PartnerSupported  2013-01-24  
hp-ams                         500.9.2.0-11.434156                 Hewlett-Packard  PartnerSupported  2013-01-24  
hp-smx-provider                500.03.01.10.2-434156               Hewlett-Packard  VMwareAccepted    2013-01-24  
hpacucli                       9.20-9.0                            Hewlett-Packard  PartnerSupported  2013-01-24  
hpbootcfg                      01-01.02                            Hewlett-Packard  PartnerSupported  2013-01-24  
hponcfg                        04-00.10                            Hewlett-Packard  PartnerSupported  2013-01-24  
Run Code Online (Sandbox Code Playgroud)

在 Windows 和 Linux HP ProLiant 系统上,我使用hpasmclihplog命令行工具来重放/检查系统的集成管理日志 (IML)。它本质上是服务器的事件日志。这也可在 ILO 界面中使用。

碰巧的是,我正在使用的系统似乎没有连接和配置其 ILO。这是无法访问的...... (我知道,修复国际劳工组织......)

是否有一种快速的方法可以从 ESXi 主机端检查系统的事件日志?

logging hp hp-proliant vmware-esxi

10
推荐指数
1
解决办法
1万
查看次数

使用 Real-IP 时如何记录 $remote_addr 的原始值

我的环境有用户请求通过多个系统:

[客户端] --> [ELB] ---> [nginx] --> [网络]

(ELB = AWS 弹性负载均衡器)

多亏了这个答案,我让 nginx 确定并将正确的客户端 IP 地址传递给带有X-Forwarded-ForX-Real_IP标头的上游服务器(Web)。相关的 nginx 配置:

    real_ip_header      X-Forwarded-For;
    set_real_ip_from        10.0.0.0/8;
    real_ip_recursive   on;
    proxy_set_header X-Real-IP $remote_addr;
Run Code Online (Sandbox Code Playgroud)

我的问题是,nginx 中的 Real IP 模块$remote_addrX-Forwarded-For计算结果替换了现有变量。这为我提供了原始客户端 IP,但我丢失了实际将请求发送到代理(即 ELB)的系统的 IP 地址。

总的来说,拥有客户端 IP 对我来说更重要,但我希望能够记录完整的请求链,以便我可以了解(和调试)流量是如何流动的。目前,我只能让 nginx 记录客户端 IP、它自己的 IP 和上游服务器 IP。我也希望能够记录 ELB IP。

我看到X-Istence在 2013 年问了同样的问题,但运气不佳。从那以后有什么改变或改进吗?

nginx logging reverse-proxy x-forwarded-for amazon-elb

10
推荐指数
1
解决办法
2万
查看次数