找回密码
 注册
搜索
热搜: 回贴
  • 前程无忧官网首页 有什么好的平台可以
  • 最新的销售平台 互联网营销的平台有哪
  • 制作网页的基本流程 网页制作和网页设
  • 【帝国CMS】输出带序号的列表(数字排
  • 网站建设公司 三一,中联,极东泵车的
  • 织梦 建站 织梦网站模版后台怎么更改
  • 云服务官网 哪些网站有免费的简历模板
  • 如何建网站要什么条件 建网站要用什么
  • 吉林市移动公司电话 吉林省退休人员网
  • 设计类毕业论文 网站设计与实现毕业论
查看: 12836|回复: 4

让IIS日志记录在数据库

[复制链接]
发表于 2009-11-29 00:53:44 | 显示全部楼层 |阅读模式 IP:江苏扬州
查看网站日志是时,总是很多的.log的日志, 看起来, 查起来都不是很方便, 所以今天就想去找一个能让看这些个日志一目了然的软件, 结果查来查去, 也只有这种方法最好!
        有了日志对一个网站管理员来说是很重要的, 一旦哪天被黑, 你就可以通过日志文件来查找到那鸟人了!
1. SQL Server中建一个数据库,名字随便起了,最好能一眼就看得懂的,我的那个数据库就叫iislog.
   2. 在这里我建的表叫做iislog.
3. 那里用户名为iis 并设置密码为000000
4. 用下面的程序在查询分析器里面建立iislog表
CREATE TABLE [dbo].[iislog] (
[Logid] [int] IDENTITY (1, 1) NOT NULL ,
[ClientHost] [varchar] (255) COLLATE Chinese_PRC_CI_AS NULL ,
[username] [varchar] (255) COLLATE Chinese_PRC_CI_AS NULL ,
[LogTime] [datetime] NULL ,
[service] [varchar] (255) COLLATE Chinese_PRC_CI_AS NULL ,
[machine] [varchar] (255) COLLATE Chinese_PRC_CI_AS NULL ,
[serverip] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
[processingtime] [int] NULL ,
[bytesrecvd] [int] NULL ,
[bytessent] [int] NULL ,
[servicestatus] [int] NULL ,
[win32status] [int] NULL ,
[operation] [varchar] (255) COLLATE Chinese_PRC_CI_AS NULL ,
[target] [varchar] (255) COLLATE Chinese_PRC_CI_AS NULL ,
[parameters] [varchar] (255) COLLATE Chinese_PRC_CI_AS NULL
) ON [PRIMARY]
5. 在控制面板--> 管理工具 --> ODBC数据源 -->系统DSN -->添加..-->SQL Server -->完成--->命名一个数据源的名称(iislog)-->选择服务器(这个服务器可以是远程的也可以是本机的,远程的sql服务器一定要开了1433端口才可以连的上!)-->选择"使用用户输入登录ID和密码的SQL Server 验证"--> 下面输入登录ID和你设计好的密码!-->下一步更改默认的数据库为你的日志记录数据库! -->下一步完成就可以了!
6. 在iis里面设置一下iis的日志为odbc日志记录,然后填写"ODBC日志记录选项"
数据源名(DSN): 为自己在管理工具里面命名的数据源名称
表: 你在数据库中专门用来记录日志的表, 这个表必须有上面的那段程序来生成的一个表, 因为这个表的字段名是固定的, 不然的话就不能将日志很好的记录到数据库里面!
用户名&密码 : 用你在数据源中用的那个用户名和密码吧!
经测试, 可以真对不同的iis网站来记录日志的, 数据源可以是一样的, 但记录的表不一样就可以了(ODBC日志记录属性里面设置的).
如果你感觉这样看还不是很清晰的话, 就做一个优秀的asp页面来直观的查看吧!
注:
表字段

logid: 一个自动增加的数字id
clientHost : 客户端主机的ip
username: 登录用的用户名(iis里面设置的不用匿名登录时才有记录的)
LogTime : 日志的记录时间
service: 记录的是用的什么服务吧, W3SVC1具体什么意思我也不是很明白, 知道的留言说下!
machine: iis主机的计算机名.
serverip: iis主机的ip.
processingtime: 访问速度ms
bytesrecvd: 访问的字节
bytessent: 发送的字节数
servicestatus: 访问页面的返回说明 一般来说: 200 是访问成功, 401是访问失败
operation: 是记录的提交方式 get 或 post
target: 客户端访问的目标网页
parameters: 应该是记录网页的传递参数, get可以正常记录的 但post提交的就无法记录到这里
有什么想法留言交流!
发表于 2009-12-9 11:05:02 | 显示全部楼层 IP:台湾
支持一下吧,确实是不错的贴子。
回复

使用道具 举报

发表于 2009-12-21 12:05:04 | 显示全部楼层 IP:马来西亚
ding~~~~~~
回复

使用道具 举报

发表于 2010-2-17 19:05:08 | 显示全部楼层 IP:广东深圳
看了楼主的帖子,我陷入了严肃的思考中。我认为,如果不把楼主的帖子顶上去,就是对真理的一种背叛,就是对谬论的极大妥协。因此,我决定义无返顾地顶了!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|小黑屋|最新主题|手机版|微赢网络技术论坛 ( 苏ICP备08020429号 )

GMT+8, 2024-10-1 17:29 , Processed in 0.459882 second(s), 15 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表