Помощь

Журналы доступа к веб-сайтам (access_log)

Протокол доступа (access_log)

Протоколы доступа будут помещаться в каталог log/w3svc#### (где #### — номер вашего Web-сайта по внутренней классификации IIS) в папке с названием вашего домена. Если ваш домен называется domain.tld, то протоколы вы найдете в папке domain.tld/log/w3svc####.

Лог-файлы наполняются в реальном времени и имеют названия вида u_exГГММДД.log (где ГГ — год, ММ — месяц, ДД — день создания лог-файла). По умолчанию лог-файлы старше 7-ми дней удаляются автоматически, и вы не можете удалить их самостоятельно.

Настройка ротации журналов доступа

Для экономии места на виртуальной площадке можно изменить время ротации журналов доступа, клиентам виртуального Windows-хостинга дана соответствующая возможность в личном кабинете. Изменить время хранения журналов (ротацию) можно в Древе услуг, для чего выберите необходимый домен и измените характеристику «параметры домена», задав нужное количество суток в пункте «Срок хранения логов».

Скрипт для просмотра журналов доступа

Вы можете смотреть текущий протокол доступа к домену разместив на площадке два *.ASP файла с содержанием:

ReadLogs.ASP

<html>
<title>List Log files</title>
<body>
<%
Set oFileSystem = Server.CreateObject("Scripting.FileSystemObject")

Set oFolder = oFileSystem.GetFolder(Server.MapPath("/";)
& "\..\Log\w3svc" & Request.ServerVariables("INSTANCE_ID"))

Response.Write "Log folder = """ & oFolder.Path & "<br><br>"

for each oFile in oFolder.Files
Response.Write "<a href=""read.asp?file=" & oFile.Name &
""">" & oFile.Name & "</a>"
next
%>
</body>
</html>

Read.ASP

<html>
<Title>LogFile</title>
<body>
<%
Const ForReading = 1
Const ForWriting = 2

Set oFileSystem =
Server.CreateObject("Scripting.FileSystemObject")

sFileName = Server.MapPath("/") & "\..\Log\w3svc" &
Request.ServerVariables("INSTANCE_ID")
& "\" & Request.QueryString("file")

Response.Write "<H1>" &
oFileSystem.GetBaseName(sFileName) & "</H1><br><br>"

Set oFile = oFileSystem.OpenTextFile(  sFileName ,
ForReading )

bTableOpen = False

While Not oFile.AtEndOfStream
  sLine = oFile.ReadLine
  if NOT Left(sLine,1) = "#" Then
     if bTableOpen then
        Response.Write "<tr>"
        for each sField in Split(sLine)
            if sField = "-" Then
                Response.Write "<td nowrap></td>"
            else
                Response.Write "<td nowrap>" & sField & "</td>"
            end if
        next
        Response.Write "</tr>"
     else
        Response.Write sLine & "<br>"
     end if
  elseif Left(sLine, 8 ) = "#Fields:" then
     if bTableOpen then Response.Write "</table>"
     Response.Write "<table cellpadding=""0""
cellspacing=""0"" border=""1"" width=""100%""><tr>"

     for i = 1 to UBound(Split(sLine))-1
        Response.Write "<td bgcolor=""silver"" nowrap>"
& Split(sLine)(i) & "</td>"
     next
     Response.Write "</tr>"
     bTableOpen = True
  End if
Wend

oFile.Close
%>
</body>
</html>