我聽說很多關於使用Visual Studio 2015和Intellitrace中的新診斷工具調查CPU和內存問題的這些新功能。假設我需要解決生產環境中的高內存或CPU問題。我知道我可以從生產環境中收集iTrace文件,但是確定高內存/ CPU的原因可能有用嗎?到目前爲止,我所見過的Intellitrace的所有用例都與不希望的行爲有關,例如異常等,但我希望看到使用intellitrace來處理生產內存/ cpu問題的任何教程。Intellitrace是否適用於調查生產環境中不需要的內存/ CPU使用問題
回答
,您可以使用獨立收集記錄的IntelliTrace日誌在生產環境中這是真的。但是,這些日誌不會包含有關CPU /內存使用情況的任何信息(實際上,iTrace文件僅包含有關方法調用的信息)。
這意味着,如果你打開記錄在生產環境中在Visual Studio iTrace文件,你會看到只有記錄的診斷事件,並調用樹的列表(如果是的IntelliTrace配置爲收集呼叫信息)。 診斷工具窗口將不可用。如果試圖打開它,則會報告以下錯誤消息:
診斷工具窗口不支持當前的調試配置。
如果你想使用的Visual Studio 2015年診斷工具來分析生產CPU /內存使用你可能感興趣的Using the Profiling Tools from Command-line。但是,我沒有嘗試過這種方法,所以我不知道它是否方便。第二個問題可能是授權。我不確定這些命令行工具是否可以在不安裝VS的情況下使用。
我建議爲具有生產環境的目標機器建立remote debugging。您不需要目標安裝Visual Studio,但需要安裝Remote Tools。在調試時,您可以使用CPU Usage和Memory Usage工具。
除了this answer我還會補充一點:1)Using the Profiling Tools from Command-line是指在Performance and Diagnostics Hub中用於性能嚮導工具的命令行界面,CPU使用和內存使用工具目前沒有命令行界面; 2)您do not need安裝Visual Studio IDE從命令行使用分析工具。
您可以在應用程序中構建一個診斷線程來監視異常行爲,並在不停止操作的情況下執行幾次有限的轉儲。
可以創建一個虛擬方法,它不會在可疑代碼中運行併爲其提供一些字符串或int參數。這些將被捕獲到IntelliTrace中,以便您可以在intellitrace日誌中跟蹤perf,cpu等值等。
- 1. 此log4j.properties內容是否適用於生產環境
- 2. Rails App不適用於生產環境
- 3. F#是否適合生產環境?
- 4. Twig_Error_Syntax:函數「代碼」不存在(適用於生產環境)
- 5. 生產中是否需要Python虛擬環境?
- 6. 生產環境所需的Mysql2,而不是開發環境
- 7. 在生產環境中使用Ember.View.views訪問視圖實例是否安全,還是僅用於調試目的?
- 8. 生產環境中的Worklight PushAdapter問題
- 9. 關於調試生產環境的安全問題和風險
- 10. Rails:生產環境適用於Passenger,但不適用於控制檯
- 11. 使用Composer安裝在生產環境中的安全問題
- 12. Grails命令對象不適用於生產環境
- 13. Rails總是使用生產環境
- 14. 是否可以在生產環境中使用tuleap
- 15. 不同於測試和生產環境的開發環境?
- 16. Apache; Phusion Passenger 3 RackBaseURI僅適用於Rails 3的生產環境
- 17. Fancybox開放問題 - 適用於JSFiddle,但不適用於實時環境
- 18. 使用Commons Logging時,Log4j是否需要在Websphere環境中
- 19. FOS其餘 - 生產環境問題
- 20. 生產/測試環境容易問題
- 21. 生產環境中運行RoR應用程序的問題
- 22. Django和Active Python 2.x是否適用於使用IIS 7.5的Windows 2008 R2上的生產環境?
- 23. 生產環境中的System.Runtime.Serialization.InvalidDataContractException,而不是測試環境
- 24. Angularytics(Google Analytics for AngularJS指令)僅適用於生產環境
- 25. Heroku和寶石僅適用於生產環境
- 26. 在生產環境中使用DropCreateDatabaseIfModelChanges
- 27. 在生產環境中使用HSQLDB
- 28. 在生產環境中使用Cucumber + RSpec
- 29. 在生產環境中使用CoffeeScript
- 30. 適用於不同環境的System.Data.SQLite
這是客戶端的數據中心,訪問非常有限。我可以收集轉儲文件,我可以讓客戶端運行PerfView,但設置遠程調試將嚇唬這些人到地獄:)我正在尋找非侵入性的技術。 – BKS
這可能是最好的嘗試和重現問題在你身邊,那麼你有充分的環境;)但我意識到這並不總是可能的。 – SvenS