У меня довольно старый сервер с довольно старым устаревшим веб-приложением ASP, датируемым 2007/2008 годом. Я думаю, что исходный код исходил от SAP с Xcelsius и до недавнего времени был настроен и исправлен.
Моя проблема в том, что ведение журнала IIS не работает для этого сайта, даже если я его включил. Он отлично работает на других сайтах того же сервера, но не на этом сайте.
На каждой странице .asp у них есть подпрограмма, которая должна записывать в пользовательский файл журнала - это потому, что она также должна записывать информацию о том, какая панель управления Xcelsius (.swf!) Используется. Это нормально и работает отлично, но я все еще не понимаю, почему нормальное ведение журнала IIS не работает. Я думаю, что для этого должна быть настройка конфигурации, но я не вижу ничего подозрительного в этой процедуре. Ни в global.asa. А web.config почти пуст.
Что мне здесь не хватает? Где может быть эта настройка?
Пользовательская процедура ведения журнала:
Sub WriteToLogFile(intActionTypeId, strDocName, strDataSource, strOther)
On Error resume next
Dim intFile
Dim strLop
Dim bolFileOpen
Dim intMaxRetrys
Dim intRetry
Dim strUserIDFull
Dim strServerName
intMaxRetrys = 5
strLogFile = "\\server\folder\folder\user_activity_np.log"
set fso = CreateObject("Scripting.FileSystemObject")
set logFile = fso.OpenTextFile(strLogFile,8,True)
bolFileOpen = True
strServerName = ucase(request.serverVariables("SERVER_NAME"))&"-DASHBOARD"
dim strDateTime
strSessionId = Session.SessionID
strDateTime = right("0" & day(date),2)
strDateTime = strDateTime & "/" & right("0" & month(date),2)
strDateTime = strDateTime & "/" & year(date)
strDateTime = strDateTime & " " & right("0" & hour(now),2)
strDateTime = strDateTime & ":" & right("0" & minute(now),2)
strDateTime = strDateTime & ":" & right("0" & second(now),2)
strLop = """" & strDateTime & """" ' Action date
strLop = strLop & ",""" & strServerName & "\" & strSessionId & """" ' Session id
strLop = strLop & ",""" & "Xcelsius" & """" ' Application
strLop = strLop & ",""" & strServerName & """" ' Server
strLop = strLop & ",""" & strUserId & """" ' OS User id
strLop = strLop & ",""" & strUserId & """" ' App user id
strLop = strLop & "," & Trim(intActionTypeId) ' Action type
strLop = strLop & ",""" & strDocName & """" ' Document name
strLop = strLop & ",""" & strDataSource & """" ' Data Source
strLop = strLop & ",""" & strOther & """" ' Other info
bolRetry = true
intRetry = 0
do while bolRetry
logFile.writeLine(strLop)
if err.number <> 0 then
intRetry = intRetry + 1
If intRetry > intMaxRetrys then bolRetry = False
else
bolRetry = False
end if
loop
logFile.close
End Sub
Иногда такое случается, вы задаете вопрос и в следующие несколько минут сами находите ответ.
В диспетчере IIS есть параметр уровня файла под названием «Журнал посещений». Конечно, флажок был снят для каждого файла в приложении.