ASP 3.0高级编程(二十八)

落花灬情未了

落花灬情未了

2016-01-29 19:14

ASP 3.0高级编程(二十八),ASP 3.0高级编程(二十八)
  6.2.11  Logging Utility组件
       Logging Utility组件是ASP 3.0的新组件,提供了访问日志文件的方法,这个日志文件是由服务器支持的用于Web和FTP网站的IIS创建的。
1.  Logging Utility组件的成员
Logging Utility组件提供了六种方法,能读取日志文件的内容、把新记录写进已存在的日志文件中。这些方法和上一章讨论的FileSystemObject对象的方法有相似性,如表6-9所示:
表6-9  Logging Utility组件的方法及说明
方 法
说 明

AtEndOfLog()
用ReadLogRecord方法遍历记录时,如果文件中的所有记录都已读出,返回值为True

CloseLogFiles(io_mode)
关闭打开的日志文件,io_mode的值指定要关闭的文件,常数ForReading(1)表示关闭打开供读出的所有文件, ForWriting(2)表示关闭打开供写入的所有文件,AllOpenFiles(32)表示关闭打开的所有文件

OpenLogFile(filename,io_mode,
service_name,service_instance,
output_format)
打开filename指定的日志文件或日志文件集,可选的io_mode参数可以设置成ForReading(缺省值,1)或 ForWriting(2)。当读取取一个特定的IIS服务(例如“W3SVC”和“1”)时,可选的service_name和 service_instance参数限制从文件中返回的记录。可选的output_format参数指明写入文件时使用的格式  

ReadFilter(start,end)
当在规定的时间和日期范围内读取文件时,限制返回的记录,两个参数都是可选的,如果忽略的话,start是文件的第一个记录,end是最后一个记录

ReadLogRecord()
从用OpenLogFile方法打开的当前日志文件中读取下一个记录

WriteLogRecord(logging_object)
从打开供读出的文件中把记录写入一个打开供写入的文件中,参数logging_object是一个引用保存源记录的 Logging Utility组件实例的对象变量

Logging Utility组件提供了二十种与IIS日志记录相对应的属性,如表6-10所示:
表6-10  Logging Utility组件的属性及说明
属 性
说 明

BytesReceived
请求时从浏览器收到的字节数

BytesSent
响应时送至浏览器的字节数

ClientIP
客户机或其主机(即代理服务器)的IP地址

Cookie
在请求中传送的cookie内容

CustumFields
加到请求中的定制报头的一个数组

DataTime
请求的日期和时间(GMT)

Method
操作类型,如“Get”和“Post”

ProtocolStatus
返回到客户机的状态消息,即“200 OK”

ProtocolVersion
协议版本字符串,如“HTTP/1.1”

Referer
包含初始化请求链接的网页的URL

ServerIP
IIS机器的IP地址

ServerName
IIS服务器的机器名

ServerPort
请求到达的端口号,如“80”

ServiceName
服务器名称,如“MSFTPSVC”或“W3SVC”

TimeTaken
检索和创建网页的总处理时间

URIQuery
请求中加到URL的查询字符串中的所有参数

URIStem
请示的目标URL

UserAgent
由客户机发送的用户代理字符串

UserName
如果不是匿名地访问服务器,UserName是用户的登录名

Win32Status
处理了请求后返回的Win32状态码

2.  使用Logging Utility组件
Logging Utility组件最普遍的应用是用于对日志文件的自定义查询。从现有文件中选择一些记录写入新文件的能力,意味着能够汇总某些类型的条目,或者有选择性地挑出一些记录将来使用。
为了使用ForReading、ForWriting和AllOpenFiles常数,必须在网页的<HEAD部分包含METADATA指令。
<!-- METADATA TYPE="typelib" FILE="C:WINNTsystem32inetsrvlogscrpt.dll" --
为了遍历记录,仅须打开文件并且重复调用ReadLogRecord,直到AtEndOfLog的返回值为True。在下面的例子中将过滤记录,仅获得最后24小时以内的记录。
'Create the component instance
Set objLogUtil = Server.CreateObject("MSWC.IISLog")

'open the log file for reading, for the W3SVC instance number 1
objLogUtil.OpenLogFile "extend#.log", ForReading, "W3SVC", 1, 0

'set a filter for the last day's records only
objLogUtil.ReadFilter DateAdd("d", -1, Now), Now

'loop through the records
Do While Not objLogUtil.AtEndOfLog
   objLogUtil.ReadLogRecord  'read the next record
   Response.Write "Request received for page " & objLogUtil.URLStem & " on " _
              &n
展开更多 50%)
分享

猜你喜欢

ASP 3.0高级编程(二十八)

ASP
ASP 3.0高级编程(二十八)

ASP 3.0高级编程(十八)

ASP
ASP 3.0高级编程(十八)

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

ASP 3.0高级编程(二十)

ASP
ASP 3.0高级编程(二十)

ASP 3.0高级编程(三十八)

ASP
ASP 3.0高级编程(三十八)

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

ASP 3.0高级编程(二十一)

ASP
ASP 3.0高级编程(二十一)

ASP 3.0高级编程(二十九)

ASP
ASP 3.0高级编程(二十九)

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

保护好你的WORD文档

保护好你的WORD文档

Word鲜为人知的隐藏秘密

Word鲜为人知的隐藏秘密
下拉加载更多内容 ↓