Файлы журналов, не совпадающие с IIS, и пользовательские журналы для веб-службы ASP.NET - PullRequest
0 голосов
/ 19 марта 2012

У меня есть вопрос.

Когда кто-то вызывает мой веб-сервис, он записывается в файл журнала IIS, и я также записываю запрос (после обработки) в пользовательский файл журнала для статистических целей.

Я использую следующую функцию для входа в файл:

Public Sub Log(ByVal Message As String, ByVal Level As LogEntryLevel, ByVal Additional As Boolean)
   Dim base As String = "C:\SERVER\log\"
   Dim fileName As String = Date.Now.ToString("dd-MM-yyyy") & ".log"
   Dim newString As String = ""
   If Not Additional Then
      If System.IO.File.Exists(base + fileName) Then newString &= vbNewLine
      newString &= Date.Now.ToString("[dd/MM/yyyy HH:mm:ss.fff ") & Level.ToString & "] " & Message
  Else
      newString &= Message
  End If
   My.Computer.FileSystem.WriteAllText(base + fileName, newString, True)
End Sub

Я использую следующую функцию для получения IP-адреса клиентов:

Public Function getIP() As String
   Dim ip As String
   ip = Context.Request.ServerVariables("HTTP_X_FORWARDED_FOR")
   If ip = String.Empty Then
      ip = Context.Request.ServerVariables("REMOTE_ADDR")
   End If
   Return ip
End Function

Вчера, в 4После этого я записал в журнал:

[18-03-2012 16:08:20.282 INFO] Client 192.168.1.1 invoked CheckForUpdate with []
[18-03-2012 16:08:20.485 SEVERE] FATAL EXCEPTION WHILE PROCESSING REQUEST:
IP            : 192.168.1.1
Source        : mscorlib
Method        : Parse
Type          : System.ArgumentNullException
Error Message : Waarde kan niet null zijn.
Parameternaam: input
Stack Trace   :    bij System.Version.Parse(String input)
   bij System.Version..ctor(String version)
   bij DataLayer.Service.CheckForUpdate(String ver) in File1:regel 79
-------------------------END ERROR REPORT-------------------------
[18-03-2012 16:08:20.516 INFO] Client 192.168.1.1 invoked CheckForUpdate with []
[18-03-2012 16:11:01.165 INFO] Client 192.168.1.1 invoked CheckForUpdate with []
[18-03-2012 16:11:01.165 SEVERE] FATAL EXCEPTION WHILE PROCESSING REQUEST:
IP            : 192.168.1.1
Source        : mscorlib
Method        : Parse
Type          : System.ArgumentNullException
Error Message : Waarde kan niet null zijn.
Parameternaam: input
Stack Trace   :    bij System.Version.Parse(String input)
   bij System.Version..ctor(String version)
   bij DataLayer.Service.CheckForUpdate(String ver) in File1:regel 79
-------------------------END ERROR REPORT-------------------------
[18-03-2012 16:11:01.165 INFO] Client 192.168.1.1 invoked CheckForUpdate with []

Тем не менее, журналы IIS в это время совершенно пустые:

#Software: Microsoft Internet Information Services 7.5
#Version: 1.0
#Date: 2012-03-18 15:33:33
#Fields: date time s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-        Agent) sc-status sc-substatus sc-win32-status time-taken
2012-03-18 15:33:33 192.168.1.250 POST /Service.asmx - 80 - x.252.x.210 - 200 0 0 2761
2012-03-18 15:34:05 192.168.1.250 POST /Service.asmx - 80 - x.180.x.226 - 200 0 0 358
2012-03-18 15:39:29 192.168.1.250 POST /Service.asmx - 80 - x.166.x.235 - 200 0 0 390
2012-03-18 15:39:57 192.168.1.250 POST /Service.asmx - 80 - x.18.x.149 - 200 0 0 405
2012-03-18 15:44:20 192.168.1.250 POST /Service.asmx - 80 - x.4.x.113 - 200 0 0 343
2012-03-18 15:44:45 192.168.1.250 GET /Rejected-By-UrlScan ~/ 80 - x.192.x.18 - 404 0 64 218
2012-03-18 15:49:34 192.168.1.250 POST /Service.asmx - 80 - x.219.x.45 - 200 0 0 374
2012-03-18 15:52:52 192.168.1.250 POST /Service.asmx - 80 - x.59.x.202 - 200 0 0 312
2012-03-18 16:04:22 192.168.1.250 POST /Service.asmx - 80 - x.59.x.202 - 200 0 0 312
#Software: Microsoft Internet Information Services 7.5
#Version: 1.0
#Date: 2012-03-18 16:29:02
#Fields: date time s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-        Agent) sc-status sc-substatus sc-win32-status time-taken
2012-03-18 16:29:02 192.168.1.250 POST /Service.asmx - 80 - x.170.x.194 - 200 0 0 1310
2012-03-18 16:37:54 192.168.1.250 POST /Service.asmx - 80 - x.222.x.11 - 200 0 0 343
2012-03-18 16:39:09 192.168.1.250 POST /Service.asmx - 80 - x.243.x.193 - 200 0 0 327
2012-03-18 16:53:31 192.168.1.250 POST /Service.asmx - 80 - x.131.x.104 - 200 0 0 249

Как это возможно, что журналы IIS пусты, и все же мое приложение зарегистрированочто-то из локальной сети?В то время нет в моей локальной сети отправил этот запрос.Никого не было дома, и у нас нет беспроводной сети.Было ли у меня несанкционированное вторжение?

Было бы здорово, если бы вы, ребята, могли бы ответить на мой вопрос для меня!

Привет.

1 Ответ

0 голосов
/ 19 марта 2012

Судя по файлам журнала, похоже, что IIS мог быть сброшен примерно в это время (это могла быть перезагрузка системы, кто-то делал iisreset, регулярная перегруппировка пула приложений и т. Д.).

Наиболее вероятное объяснение состоит в том, что в вашем DataLayer есть код, который выполняется при запуске IIS, который вызывает метод CheckForUpdate, поэтому в журнале IIS ничего нет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...