我们发布了一些arcgis服务,我想知道是否有办法捕获某些服务上的传入请求,并使用.NET和C#将它们存储在数据库(mssql)中。我只是在寻找请求来自的IP,时间戳和他们使用的服务。
例如,假设我有已发布的服务。
www.yourdomain.com:6080/arcgis/rest/services/usa_gecoder
。我只想存储他的ip,usa_geocoder
和访问日期时间。
答案 0 :(得分:0)
您是否有任何特殊原因无法使用IIS日志?根据我的经验,我在Windows环境中安装了arc服务器(10.1)并安装了Web适配器,并将其自身安装为IIS应用程序。由于Web适配器处理休息服务请求,因此对您的服务的所有请求都将包含在您的IIS日志中,包括uri-stem,uri-query,client ip等。您甚至可以使用LogParser version 2.2来过滤您的服务日志。
如果这不适合你,那么就像pickypg提到的那样,使用处理程序,最好是esri provides as a start。使用此代理处理程序,您可以通过解析URI并从HttpContext中获取其余数据来自定义它以记录您需要的数据。