IIS中WEB服务器的日志存放到SQL Server 2005中

IIS中WEB服务器的日志存放到SQL Server 2005中

大家好,又见面了,我是全栈君。


随着Internet的速度发展,几乎各个政府部门、公司、大专院校、科研院所等都在打算构建或正在建设自己的网站。在这个过程中,大家会遇到各种各样的问题。对Web服务器的运行和访问情况进行详细和周全地分析,可以及时了解网站运行情况,发现网站存在的不足,促进网站更好地发展,它的重要性是不言而喻的。

对于所有的管理员来说,保证网站稳定正常运行只是一个最基本的工作,管理Web
网站不只是监视Web
的速度和Web
的内容传送。它不仅要关注服务器每天的吞吐量,还要了解这些Web
网站的访问,了解网站各页面的访问情况。根据各页面的点击频率来改善网页的内容和质量,提高内容的可读性,以及跟踪包含有商业交易的步骤及管理Web
网站的一些可怕数据等(
如入侵行为)
。但这一切的一切都要依据WEB
日志,所以WEB
日志的存放就是一个很重要的内容。
可以为单个网站或 FTP 
站点选择日志格式。如果站点已启用日志记录,可以为该站点的单独目录禁用或启用日志。
 
日志文件格式
可使用下列格式在 Web 
服务器上记录用户活动:
W3C 
扩展日志文件格式
IIS 
日志文件格式
NCSA 
公用日志文件格式
ODBC 
日志记录
集中的二进制日志记录
 
W3C 
扩展日志文件格式、IIS 
日志文件格式和 NCSA 
公用日志文件格式都是 ASCII 
文本格式(除非为网站启用了 UTF-8
)。W3C 
扩展和 NCSA 
公用格式用四位年份的格式来记录日志数据。IIS 
格式对于 1999 
年和以前的年份使用两位年份格式,对于 1999 
年以后的年份使用四位年份格式。对于 NCSA 
 IIS 
日志文件格式,为每个请求记录的数据是固定的。但是,W3C 
扩展允许您选择要为每个请求记录的属性。
 
W3C 
扩展日志文件格式
W3C 
扩展格式是一个包含多个不同属性、可自定义的 ASCII 
格式。可以记录对您来说重要的属性,同时通过省略不需要的属性字段来限制日志文件的大小。属性以空格分开。时间以 UTC 
形式记录。
以下示例显示了使用下列属性的文件语句:时间、客户端 IP 
地址、方法、URI 
资源、协议状态和协议版本。
#Software: Internet Information Services 6.0
#Version: 1.0
#Date: 2001-05-02 17:42:15
#Fields: time c-ip cs-method cs-uri-stem sc-status cs-version
17:42:15 172.16.255.255 GET /default.htm 200 HTTP/1.0
 
上面所示的项目表明:2001 
 5 
 2 
日下午 5:42 (UTC)
HTTP 
版本为 1.0
IP 
地址为 172.16.255.255 
的用户针对 /Default.htm 
文件发出了 HTTP GET 
命令。该请求正确无误地返回。#Date: 
属性字段表明了第一个日志项目建立的时间,也就是创建日志的时间。#Version: 
属性字段指出使用的是 W3C 
扩展日志记录格式。
 
可以选择任何属性,但某些属性可能没有可用于某些请求的信息。对于那些选中了但其中没有信息的属性,连字符 (-) 
作为占位符出现在日志文件的属性字段中。
 
IIS 
日志文件格式
IIS 
格式是固定的(不能自定义的) ASCII 
格式。IIS 
格式比 NCSA 
公用格式记录的信息多。IIS 
格式包括一些基本项目,如用户的 IP 
地址、用户名、请求日期和时间、服务状态码和接收的字节数。另外,IIS 
格式还包括详细的项目,如所用时间、发送的字节数、动作(例如,GET 
命令执行的下载)和目标文件。这些项目用逗号分开,使得格式比使用空格作为分隔符的其他 ASCII 
格式更易于阅读。时间记录为本地时间。
 
当在文本编辑器中打开 IIS 
格式的文件时,项目与下面的示例相似:
 
192.168.114.201, -, 03/20/01, 7:55:20, W3SVC2, SALES1, 172.21.13.45, 4502, 163, 3223, 200, 0, GET, /DeptLogo.gif, -,
 
172.16.255.255, anonymous, 03/20/01, 23:58:11, MSFTPSVC, SALES1, 172.16.255.255, 60, 275, 0, 0, 0, PASS, /Intro.htm, -,
 
上面所示的项目将在下面的表中加以说明。每个表的顶行来自第二个网站实例(以 W3SVC2 
形式出现在“服务”下面),底行来自第一个 FTP 
站点实例(以 MSFTPSVC1 
形式出现在“服务”下面)。由于页宽所限,该示例出现在三个表中。
 
IIS中WEB服务器的日志存放到SQL Server 2005中

在上面的示例中,第一个项目表明:2001 
 3 
 20 
日上午 7:55
IP 
地址为 192.168.114.201 
的匿名用户发出一条 HTTP GET 
命令,从 IP 
地址为 172.21.13.45
、名为 SALES1 
的服务器请求图像文件 /DeptLogo.gif
163 
字节的 HTTP 
请求有 4502 
毫秒(4.5 
秒)的处理时间来完成,并将 3223 
个字节的数据毫无错误地返回给匿名用户。
 
在日志文件中,所有属性字段都以逗号 (,) 
结束。如果某个属性值无效,则连字符 (-) 
起占位符的作用。
 
NCSA 
公用日志文件格式
(美国)国家超级计算技术应用中心 (NCSA) 
公用格式是一种固定的(不能自定义的)ASCII 
格式,可用于网站但不能用于 FTP 
站点。NCSA 
公用格式记录了关于用户请求的基本信息,如远程主机名、用户名、日期、时间、请求类型、HTTP 
状态码和服务器发送的字节数。项目之间用空格分开;时间记录为本地时间。
 
当在文本编辑器中打开 NCSA 
公用格式文件时,项目与下面的示例相似:
 
172.21.13.45 – Microsoft\fred [08/Apr/2001:17:39:04 -0800] “GET /scripts/iisadmin/ism.dll?http/serv HTTP/1.0” 200 3401
 
 
注意 
在前面的项目中,第二个属性字段(显示用户的远程登录名)是空的,它由 IP 
地址 172.21.13.45 
后面的连字符表示。
 
以上示例的项目在下面的表中说明。由于页宽所限,该示例显示在两个表中。
 
IIS中WEB服务器的日志存放到SQL Server 2005中
上面的项目表明:Microsoft 
域中 IP 
地址为 172.21.13.45
、名为 Fred 
的用户在 2001 
 4 
 8 
日下午 5:39 
分发出一条HTTP GET 
命令(即,下载一个文件)。该请求将 3401 
个字节的数据正确无误地返回给名为 Fred 
的用户。
 
集中的二进制日志记录
集中的二进制日志记录是多个网站向单个日志文件中写入不带格式的二进制日志数据的过程。每个运行 IIS 
 Web 
服务器都为该服务器上的所有站点创建了一个日志文件。集中的二进制日志记录可节省宝贵的内存资源。根据您的配置,利用集中的二进制日志记录可以大大提高性能和可伸缩性。
 
ODBC 
日志记录
ODBC 
日志记录格式是对符合开放式数据库连接 (ODBC) 
的数据库(Microsoft Access 
 Microsoft SQL Server
™)中一组固定的数据属性的记录。记录的某些项目中包含有用户的 IP 
地址、用户名、请求日期和时间(记录为本地时间)、HTTP 
状态码、接收字节、发送字节、执行的操作(例如,GET 
命令执行的下载)和目标(例如,下载的文件)。对于 ODBC 
日志记录,必须指定要登录的数据库,并且设置数据库接收数据。
 
当启用 ODBC 
日志记录时,IIS 
会禁用内核模式缓存。因此,执行 ODBC 
日志记录可能会降低服务器的总体性能。
 
下面我们来详细看一下如何将WEB
服务器的日志存放到SQL SERVER2005
   
IIS
站点日志记录到数据库中的方法如下:
   1,
在目标服务器的SQL
里建个数据库,
例如,WEBLOG
 
IIS中WEB服务器的日志存放到SQL Server 2005中
IIS中WEB服务器的日志存放到SQL Server 2005中
 
 3,

IIS
服务器上
,
打开
ODBC
管理器
,
建立一个系统
DSN,DSN
名叫
WEBLOG,
驱动选择
SQL SERVER,
服务器就输入
SQL SERVER
服务器的
IP
地址
,
验证
,SQL SERVER
验证
,
输入用户名和密码
,
数据库选择刚建好的WEB
LOG
数据库
,
最后
,
测试
,
通过了就
OK.
IIS中WEB服务器的日志存放到SQL Server 2005中
 
IIS中WEB服务器的日志存放到SQL Server 2005中
 
 
IIS中WEB服务器的日志存放到SQL Server 2005中

再到 SQL SERVER
中查看数据表中应该已经有数据了:
 
IIS中WEB服务器的日志存放到SQL Server 2005中





 本文转自 dufei 51CTO博客,原文链接:http://blog.51cto.com/dufei/81337,如需转载请自行联系原作者

 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/107931.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • dmesg总结

    dmesg总结1.dmesg介绍在dmesg里我们可以查看到开机信息,printk产生的信息等。若研究内核代码,在代码中插入printk函数,然后通过dmesg观察是一个很好地方法。 2.dmesg输出含义dmesg输出的数字含义是什么,纠结了一会儿,下面给出解释终端输入dmesg,可以看到每行最开始显示的是一个综括号,里面的数字为timestamp,时间戳,该时间指示的系统从…

    2025年6月27日
    0
  • 离散数学谓词逻辑答案_离散数学逻辑符号

    离散数学谓词逻辑答案_离散数学逻辑符号1谓词1.1引入在研究命题逻辑中,原子命题是命题演算中最基本的单位,不再对原子命题进行分解,这样会产生两大缺点:(1)不能研究命题内部的结构,成分和内部逻辑的特征;(2)也不可能表达两个原子命

    2022年8月3日
    4
  • httprunner3源码解读(1)简单介绍源码模块内容「建议收藏」

    httprunner3源码解读(1)简单介绍源码模块内容「建议收藏」前言最近想着搭建一个API测试平台,基础的注册登录功能已经完成,就差测试框架的选型,最后还是选择了httprunner,github上已经有很多开源的httprunner测试平台,但是看了下都是基于

    2022年7月30日
    7
  • msfconsole是什么意思_msfconsole渗透手机

    msfconsole是什么意思_msfconsole渗透手机先模拟多层内网,摸清后渗透的使用,再从学校入手。内网渗透test网络拓扑以kali为攻击机,xp作为跳板主机,win7是内网主机xp主机是提供web,FTP等服务,已被kali机获取shellwin7正常不与外网访问,和DMZ区域处于同一网段环境搭建使用VMware的主机模式,构建虚拟局域网。查看Host-only模式详解虚拟网络编译器中添加两块网卡vm1,vm2。类型:主…

    2022年9月7日
    1
  • RESTful API 设计指南

    RESTful API 设计指南

    2021年11月6日
    28
  • 关于c++杀线程函数TerminateThread强烈不建议使用

     TerminateThread强烈不建议使用,因为这个函数的执行是异步的,你无法保证调用之后会立即退出,同时线程的堆栈均不会被销毁,导致内存泄露。如果调用了这个函数,请确保使用WaitForSingleObject来等待线程对象的结束。  参考链接:https://blog.csdn.net/kofandlizi/article/details/6458011https…

    2022年4月4日
    87

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号