黑帽联盟

 找回密码
 会员注册
查看: 1673|回复: 0
打印 上一主题 下一主题

[经验] 站群管理经验之Log日志监控

[复制链接]

895

主题

38

听众

3323

积分

管理员

Rank: 9Rank: 9Rank: 9

  • TA的每日心情
    无聊
    6 天前
  • 签到天数: 1644 天

    [LV.Master]伴坛终老

    做SEO会经常查看网站的log日志,通过log日志来进行一些分析和判断,但是如果你控制了上百或上千的站群时,你还会一个一个的看log么?

    在处理大规模站群的时候,我们一般就是根据网站的重要程度,进行分级别监控,比如重要的资源站,我们可能当成主站一样的分析维护,而对于有些站可能只是出问题时进行分析,维护,而还有些站可能就让它自生自灭了,这个根据作站群时的策略来定义,并没有通用的说法。

    那一般我都会对站群进行的是异常监控,即发现异常时人工分析处理,平时基本不看。

    所以我们要定义出哪些是属于异常情况,一般我自己定义的异常情况主要是以下5种:
    1.蜘蛛到访次数异常
    比如降权了,蜘蛛不来了,或者传说中的降权蜘蛛来了?

    2.网站流量异常
    一般站群的流量不会有很大的波动,如果产生波动,可能是有人来采集你了?或来攻击你了?

    3.404异常
    这个很好理解,很重要。

    4.一些特殊页面的流量异常
    一些我们想要用户访问的页面流量,比如最常见的淘客的跳转页面,我们可以知道到底有多少人进行了跳转,而和淘客的成交率进行比较,可以推算出是否流量来源和 成交率是否存在关联。

    5.一些特殊词的流量异常
    假设市场搜索量不变,描述引起的点击率不变,那么这个特殊词的流量也就基本反应了词本身的排名,如果你问,如果市场搜索量变了呢?那就不是seo技术的问题了,那是seo策略的问题了。

    好了,如果我要监控这5个指标,那么我要给每个指标建立一个数据表,我们用ABCDE来代替,然后我们就要建立一个自动执行的任务,将每个网站每天的这个数据都保存到数据库里。

    这个在IIS下,我推荐使用微软提供的Logparser工具,可以使用sql语句对日志进行处理。

    具体logparser的参数意义,大家可以自己百度。我说下上面5项的具体使用方法:

    比如第一个
    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:***
    -i 表示输入的日志类型
    -o表示输入的类型,你可以写-o:csv 那么就输出为csv.
    A: Select  count(0) as hits Into A  from xxx.log where  cs(User-Agent) like ‘%spider%’
    B: Select  count(0) as hits  Into B  from xxx.log where TO_LOWERCASE (EXTRACT_EXTENSION(cs-uri-stem)) NOT IN (‘gif’;'jpg’;'png’;'css’;'js’)
    C: Select  count(0) as hits  Into C from xxx.log where  sc-status=’404’
    D: Select  count(0) as hits Into D  from xxx.log where  cs-uri-stem=‘特殊页面’
    E :  Select  count(0) as hits Into E  from xxx.log where  cs(Referer) like ‘%xxx%’

    通过上面的操作,我们把每天的数据保存在了数据库里,接下来我们要进行预报处理。

    其实预报处理是挺简单的,原理就是由于每天我们的数据都存放在表里,那么我们只要对当天的数据和昨天的数据进行对比就可以获取出差值。

    这里是有个阈值的,就是差值多少才算,这个你可以根据实际的经验来处理,对于流量,一般建议是用除法来做,也就是百分比来看,在超出30%以上,我们都认为是异常。对于404,则可以直接用减法,因为404是不正常的,一般一旦出现多出的404,肯定是什么地方出问题了,要么有错误连接,要么有错误外链,这个根据实际情况来设定。

    这个工作我是使用了一个c#程序来处理的,以404为例,先用 select top 2 * from 404table order by id desc 获取最新的2条数据,然后进行对比就可以了。

    当发现异常时,通过程序对你的QQ邮箱发送一封email,利用QQ邮箱的自动提示功能还是很方便的,这样大量的站群,你可以不用每天去看,只要设定好阈值,就可以只看需要看的站了。

    上面只是提供一个思路,其实你可以变通一下,比如利用logparser把日志进行拆分,然后利用ftp命令,将日志发送到你指定的ftp里,这样就可以直接利用数据了,而不用每次拿到日志再拆分。你可以-o:csv 导出为csv格式,就可以在excel里进行处理。


    总结一下,处理多网站,就要合理利用工具,对信息进行筛选,挑出重要的信息进行提示,然后再人工处理,减少人工的大规模手动重复劳动,这个不仅仅包括操作软件,也包括看大量的无用数据。

    帖子永久地址: 

    黑帽联盟 - 论坛版权1、本主题所有言论和图片纯属会员个人意见,与本论坛立场无关
    2、本站所有主题由该帖子作者发表,该帖子作者与黑帽联盟享有帖子相关版权
    3、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和黑帽联盟的同意
    4、帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
    5、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
    6、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
    7、黑帽联盟管理员和版主有权不事先通知发贴者而删除本文

    勿忘初心,方得始终!
    您需要登录后才可以回帖 登录 | 会员注册

    发布主题 !fastreply! 收藏帖子 返回列表 搜索
    回顶部