解决方案:网站蜘蛛日志如何分析?对优化有用吗?
优采云 发布时间: 2022-10-12 03:15解决方案:网站蜘蛛日志如何分析?对优化有用吗?
通常我们在做网站优化的时候,想知道哪些搜索引擎蜘蛛访问了我们网站,或者为什么网站而不是收录等等。原因网站有问题!那么这个时候我们就可以通过网站日志下载,查看里面各种蜘蛛的来源,分析一下!但是有很多优化师和站长对此不了解,网上也有很多疑问,所以今天就借这个机会跟大家聊聊!
1、网站蜘蛛日志是什么意思?
网站的spider的意思是各大搜索引擎向服务器发送请求时产生的访问日志文件,在服务器中生成一个固定的网站日志。格式是一定的.log文件形式存在。
2. 如何分析蜘蛛日志?
1、先下载网站日志后,将你的网站日志与光年日志一起导入本工具并打开。有每日蜘蛛访问记录,具体有蜘蛛ip、蜘蛛访问日期、蜘蛛每天爬取你的网站的目录和页面、蜘蛛返回的状态码、蜘蛛来源类型。
2.查看蜘蛛的方式是使用蜘蛛源ip。每个蜘蛛 ip 都有不同的含义。比如蜘蛛ip经常以123.125.68.开头,说明你网站可能想入沙。盒子出来了!如果220.181.68开头的ip蜘蛛经常出现,说明你网站可能被K进驻了!220.181.7和123.125.66代表百度蜘蛛IP即将爬取,准备爬取你的网站页面。
3. 网站 日志文件中的每个返回状态码都有不同的含义。比如200状态码表示你的网站蜘蛛返回成功并成功抓取页面,404状态码表示是蜘蛛没有访问你的网站页面。301代表当蜘蛛爬到某个网页时,我们的一个页面跳转了。403 状态码表示服务器拒绝爬虫爬取。你可以去看看机器人有没有设置禁止所有蜘蛛爬行!如果有 500 状态码,说明服务器内部出现错误,蜘蛛肯定爬不上你的页面。
4、蜘蛛源类型如下:Baiduspider代表百度蜘蛛类型。Googlebot:Googlebot 蜘蛛类型。搜狗:代表搜狗蜘蛛类型。360Spider:代表360蜘蛛类型。
3、蜘蛛日志对网站的优化有影响吗?
爬虫日志在我们平时对网站的优化中起到了非常重要的作用。具体功能如下:
1.您可以根据蜘蛛ip的来源,查看我们的网站最近的健康状况,是否需要调整等。
2、根据蜘蛛源的类型,可以知道哪些搜索引擎平台最近来网站,哪些搜索引擎平台来得少,是什么原因造成的。可以及时调整,增加网站的IP数量和转化率!
3、可以用蜘蛛爬取你的网站目录页面等,可以清楚的知道你的网站哪些页面是优质页面,可以参考,可以吸取精华并在将来编写副本时做更多。搜索引擎喜欢 网站 页面!
总结:在我们网站优化的过程中,网站蜘蛛日志一定不能马虎,一定要好好利用,对以后的优化会起到很大的作用!
解决方案:【阿里开源】Tsar——灵活的系统和应用采集软件
在LinuxCon + ContainerCon + CloudOpen China(简称LC3)大会上,开源人士的盛会,阿里云CDN团队的孔剑(花名)分享了开源系统和应用的背景和设计采集软件沙皇的想法和使用,模块开发和未来规划。
其实是阿里巴巴在做系统或者应用监控的时候的一个思路。队友在实际使用过程中比较舒服,软件的扩展性、稳定性、易用性也比较好,所以目前全机都可以使用。Deployment作为基础的监控代理,提供稳定的数据支持,同时也是对外开源的。
沙皇的背景
对于在线SA/PE/R&D,他在开发和部署软件的时候,需要注意软件的运行情况。他需要去上面看看整个服务器的CPU/内存/网络/IO等基本指标是否OK。找出这些指标的一些软件瓶颈和针对性的优化。其实现在市面上有很多类似的软件,都有一定的特殊性,可能只是采集的某一个,每个软件采集都有不同的指标,这些的用法指标时间不一致。所以对用户的要求非常高,需要知道如何使用所有的监控软件,对于排查在线问题非常不方便。这也是我们最初的痛点。我们发现我们拥有所有的数据,但是如何链接和使用它很不方便。所以,我们想出了沙皇的想法。
下图是现在网上很多命令的使用。整个Linux站的每一层都有一些对应的命令。运维等用户的学习成本非常高,不利于我们统一监控。
需求和解决方案
因此,我们最初的要求是有一个易于使用的采集软件,具有完整的基础数据,最好是应用程序数据。因为刚才列出的指标都是通用指标,但是我们有应用软件,所以我们想知道应用软件的一些数据,比如QPS和响应时间。目前的开源软件无法支持,业务需要编写采集工具进行数据采集和监控。
另外,我们希望在数据之间做一些数据关联。比如当前CPU高,是否会带来其他一些数据指标的波动?需要对这些指标进行比较才能确定问题。
同时,必须对数据进行过滤,离线实时查看,本地长期存储,远程发送,方便在中心进行数据分析和挖掘。
有了这些需求,我们的解决方案就是模仿Sar,它本身就是一个系统活动报告,实现了系统指标的采集,我们在它的基础上做了一些扩展。除了系统级的数据采集,Tsar还可以进行应用级的采集,模块化,支持扩展。例如,采集 现在有十个指标。如果还有其他应用指标和业务数据要到采集,可以很方便的在Tsar中写一个模块到采集。它还支持简单的报警和远程发送。
设计和使用
沙皇的原则很简单。它主要利用动态库的特性。我们每个采集模块都会实现一些功能,比如采集函数,分析处理函数,注册时提供的模块。基础字段,比如模块名,模块收录的字段,字段从哪里来采集,采集之后怎么处理和输出,这些函数都注册在Tsar框架中,每个循环到采集 调用这些指令的函数时,就可以完成采集的处理和整个数据的输出。
整个模块的注册和执行流程如下:
下图是Tsar的功能大图,底部是系统计数器和软件界面。每个具体的模块都是基于采集,参考Sar实现了很多系统指标。此外,还为应用软件提供了LVS、Nginx等对比。通用应用软件模块。
在上述采集的过程中,会对模块进行一些过滤处理,并执行各个模块的采集函数来获取数据。根据格式化,框架将数据格式化并保存到/var/log/tsar.data。我们采集把所有的原创数据,以文件的形式存储起来。与Sar有区别。Tsar 中的字段是可读的,Sar 看不到含义。
数据采集到达后,支持发送到远端,比如发送到网络接口,或者发送到MySql、Nagios等。另外,数据展示分为两部分,分别是分为实时显示和历史显示。实时显示需要每秒查看指标的样子。历史显示就是对过去每一分钟的数据做一个历史记录。回放。目前,Tsar 支持秒、分钟、天等不同维度的数据展示。
沙皇的用法
Tsar的用法比较简单,不管是什么模块,这个用法都是共享的。上面最常用的命令是check命令,输出系统最新的监控指标。有了这个功能,所有基础软件采集基本可以每分钟调用一次,拿到最后一分钟的监控数据,把这些数据带到我们的监控平台,在里面做一些监控配置和集中工作。这个命令是最常用的。
-c 是定期执行的命令。这样,你当前打开的模块的所有采集函数都会执行一次,获取数据,并将数据保存在tsar的原创文件中。以后使用。
-i 是指定一个间隔,多少秒或多少分钟。
下图是一些用法的截图。实时模式下,可以指定-l或者--live,可以现场采集模块数据,实时分析结果。如果不指定,则默认为离线模式。时间间隔,如果不指定-i,默认为秒和分钟,实时每秒显示一次采集,离线每分钟显示一次。您还可以指定模块,--mod_name,指定几个模块,并显示几个指标。这样就可以将你关心的指标显示在一个屏幕上,让你看到它们之间的影响和关系,从而找到问题的症结所在。
Tsar 还支持多个项目模块。有时系统指标有多个实例。这里体现了item的概念,可以更灵活的展示数据。另外,--check是看我们最后一分钟的数据,会在最后一分钟显示这一行的各个指标和字段,可以很方便的做一些监控处理。
Tsar 本身是一个独立的软件,可以为其他系统提供丰富的数据源输入。
下图是比较常见的配置,包括配置文件、指定模块、指定输出等。
下图是如何输出到Mysql和Nagios的配置方法。
定制开发
Tsar 目前支持 C、bash、Lua 开发自定义模块,内部有近百个应用模块。模块组成包括模块名称、描述信息、采集函数、显示函数等,tsar本身也可以使用tsardevel的脚本自动生成一个模板,在这个模板的基础上进行修改,比较多高效的。
具体模块开发内容如下:
采集这个功能是具体抓取value_1/2/3,不管是到counter文件还是接口,都可以获取到value。但是得到的值并不是最终要显示的值,而是瞬时值。
显示的数值需要通过数据显示功能进行处理计算。display函数中的两个输入参数会告诉你采集的最后两个数组的数据是什么。通过对这两个数组进行操作,最终得到的结果就是最终显示的数字。前几个内容做完后,最后在模块中生成注册函数。以下是一些关键信息,例如模块名称。用法、模块字段数据结构、字段数、采集 函数和表示函数。
至此,一个模块基本完成。
未来的计划
我们对沙皇的未来计划主要是三个方面。
首先是跨平台,有些Linux版本支持的不是特别好,所以我们会在跨平台上多尝试。
二是完善框架。目前框架比较大。如果单个模块有一些异常,整个采集都会挂掉。在本节中,我们将解耦一些模块和框架之间的强依赖关系,希望能够容灾。更好的。
三是丰富一些模块。常用的系统模块已经很多,内部应用模块也比较丰富。也希望大家可以在开源区提供更多的模块,让我们支持的采集的类型更加丰富。一些。
目前,在阿里巴巴整个开源代码库中,外部贡献者并不多,十几个人,内部贡献代码的有一百多人。欢迎来到主页和代码库。如有疑问,也可以联系本文分享者:再见。