我們將ASP.NET應用程序託管在位於硬件負載平衡器後面的兩個Web服務器(Server 2003,IIS 6)上。當我查看IIS日誌時,IIS(v6)日誌中的c-ip值始終是負載平衡器的IP地址。我注意到在http頭文件中,有一個X-Forwarded-For頭文件,它似乎有請求的IP地址。我能做些什麼來讓IIS在日誌中記錄此標題值?IIS日誌文件和負載均衡器?
回答
當通過代理服務器時,x-forwarded-for是負載平衡器的最多commonly used。你大概可以寫一個httpfilter,它可以自己調換;或IIS Tracer有能力玩標準文件;包括交換c-ip和x -forward字段。
如果不使用第三方報告工具;您可能希望將日誌轉儲到SQL Server中,您可以隨時操縱這些列。
我個人喜歡後者,這樣我就可以獲得所有服務器的聚合數據;我將其轉儲到同一個數據庫中的不同表中,然後從服務器場中的所有Web服務器進行報告。我還發現比在整個地方管理500MB左右的日誌文件更容易。
F5 networks在devcentral.f5.com上提供了一個ISAPI篩選器,它將採用x-forwarded-for並在日誌中使用它。
除此之外,您可以做的事情並不多 - 這就是TCP的工作原理。 :)
這是一個很老的問題,但認爲我會補充說,IIS 8.5具有寫 自定義HTTP標頭的IIS日誌的能力。這比安裝ISAPI篩選器或HTTP模塊要好得多。
此穿行展示瞭如何通過IIS管理器進行設置: http://www.iis.net/learn/get-started/whats-new-in-iis-85/enhanced-logging-for-iis85
這個其他等問題,展示瞭如何使用PowerShell做到這一點: Add IIS 8.5 Custom Logging Fields with Powershell
我不知道它是如何長久以來(但在Windows Server 2008及更高版本中)Advanced Logging extensionIIS 7和更高版本提供Custom logging functionality可用於收集(幾乎)任意信息在IIS日誌文件中,包括自定義HTTP請求(和響應)標頭,如X -Forwa rded - 對於。
我今天剛剛在我們的服務器上設置了它,它運行得非常漂亮。
有一點要注意:不是由%COMPUTERNAME% - 服務器名編輯默認日誌定義,只需創建您的網站或全球您的服務器,以避免異常的一個新的「請求不支持的。」當試圖保存您的更改時。這發生在您嘗試編輯默認的定義在站點級別(感謝this thread的答案)。
IIS 8.5高級日誌可以讓你輕鬆地登錄了X-FORWAREDED-FOR頭。
- 1. Socket.io和負載均衡器
- 2. Nginx多負載均衡器或單負載均衡器
- 3. GCP負載均衡器或Kubernetes類型=負載均衡器
- 4. 負載均衡
- 5. Log4Net - Windows日誌記錄服務器IP負載均衡
- 6. 來自負載均衡服務器的日誌
- 7. 使用負載均衡器
- 8. 負載均衡服務器
- 9. Erlang負載均衡器
- 10. 負載均衡和APC
- 11. SignalR和負載均衡
- 12. yii2和負載均衡
- 13. IIS負載平衡和ASP.Net
- 14. IIS ARR和負載平衡
- 15. nginx負載均衡器和OAuth
- 16. 負載均衡器和會話管理
- 17. 彈性負載均衡器和https
- 18. 負載均衡器,套接字和java
- 19. 負載均衡IIS中,如何管理上傳文件夾?
- 20. Tomcat負載均衡
- 21. MongoDB負載均衡
- 22. 與負載均衡
- 23. 無法使用Microsoft Azure負載平衡器負載均衡tomcats
- 24. Amazon EC2負載均衡器上的負載平衡算法
- 25. activemq負載均衡使用彈性負載平衡器?
- 26. 綁定地理負載均衡vs Nginx地理負載均衡
- 27. 如何從訪問日誌中刪除負載均衡污染
- 28. 負載均衡器的SSL卸載
- 29. 負載均衡網絡服務器/ IIS/MSSQL - 許多客戶端
- 30. LogParser2.2和日誌負載平衡服務器
你寫你自己的應用程序/腳本日誌轉儲到SQL還是你在網上找什麼東西? – twlichty 2009-05-04 19:09:46
MS發佈瞭如何http://support.microsoft。com/kb/245243 – u07ch 2009-05-04 21:46:02