Monitoramento e Tratamento de Situações Anormais do Site

Ao fazer SEO, é comum verificar os logs do site com frequência para análise e avaliação. No entanto, se você controla centenas ou milhares de sites, você vai verificar os logs um por um?

Ao lidar com um grande número de sites, geralmente monitoramos com base na importância do site. Por exemplo, para sites de recursos importantes, podemos analisar e mantê-los como o site principal, enquanto para alguns sites, apenas analisamos e mantemos quando há problemas. Alguns sites podem ser deixados para se resolverem sozinhos. A definição depende da estratégia utilizada no site, não há um consenso geral.

Normalmente, faço monitoramento de exceções nos sites, ou seja, analiso manualmente quando há alguma anomalia, mas raramente verifico periodicamente.

Definição de situação excepcional

Ao monitorar o funcionamento dos sites, é necessário definir quais situações são consideradas excepcionais. Geralmente, as exceções que defino incluem principalmente os seguintes 5 tipos:

  1. Anormalidades no número de visitas do mecanismo de busca: como uma queda súbita de classificação que resulta na interrupção do acesso do mecanismo de busca, ou frequência anormal de visitas do mecanismo de busca devido a uma queda de classificação.
  2. 网站流量异常:站群的流量一般不会出现大幅波动,若出现波动可能是有人采集或攻击网站。
  3. 404异常:即页面不存在异常,需要及时处理。
  4. 特殊页面流量异常:重要页面流量异常,比如淘客跳转页面,可以通过流量与成交率比较观察流量来源情况。
  5. 特殊词流量异常:若市场搜索量和描述点击率保持不变,特殊词流量即反映词排名情况。

监控方法

为了监控上述异常情况,我们可以为每个指标建立一个数据表,用ABCDE代替。然后建立一个自动执行的任务,将每个网站每天的数据保存到数据库。

在IIS下,推荐使用微软提供的Logparser工具,该工具能够使用SQL语句对日志进行处理。具体参数意义可通过搜索引擎自行查找。

具体使用方法

以第一个异常情况为例,可以通过以下命令来监控蜘蛛到访次数异常:

Logparser -i:iisw3c "Select count(0) as hits Into A from xxx.log where cs(User-Agent) like '%spider%'" -o:SQL -server: 服务器IP -driver:"SQL Server" -database:数据库名 -username:sa -password:***

异常处理

进行预处理时,对当天数据和昨天数据进行对比,获取差值。设定阈值,超出阈值即视为异常。比如流量异常可用百分比判断,超过30%为异常;404异常可直接使用减法判断。

我使用一个C#程序来处理异常,比如通过对比最新的404数据来发现异常。当异常发生时,程序会通过邮件通知,方便及时处理。

其他建议

除了以上方法,还可以利用Logparser拆分日志,然后通过FTP命令发送到指定FTP地址,这样就能直接利用数据而不必每次手动处理。

总的来说,监控网站异常情况是维护网站安全和稳定运行的重要手段,及时发现和处理异常情况能够保障网站的正常运行和用户体验。