簡體   English   中英

.net v4的全自動應用程序跟蹤

[英]Full automatic application trace for .net v4

我想實現一種方法來跟蹤為.net v4.0編寫的應用程序中的每一行代碼。

一個例子就是。 如果我有以下功能。

private bool hasValue(string value)
{
if(string.isnullorempty(value)
{
 return false; 
}
else
{
return true;
}}

然后在調用該函數時,我希望詳細的跟蹤日志包含如下內容:

稱為|第10行的函數|簽名私有布爾hasValue(字符串值)| ValuesPassed hasValue(“”)行評估| 11號線 if(string.isnullorempty(value)| ValuesPassed if(string.isnullorempty(“”)-輸入的第13行返回評估結果為true |簽名返回false |采取的返回操作。

可以手動完成此跟蹤,但是它需要大量工作,並且會弄臟代碼。 是否沒有辦法通過.net或3rd party插件自動獲得這種級別的跟蹤?

謝謝

我不知道任何適用於這種情況的框架,但我想提出幾個問題。

  1. 您認為這種詳細跟蹤的用途是什么? 在我看來,對於大多數調試問題,一些目標跟蹤語句就足夠了。

  2. 此跟蹤將用於現場解決方案嗎? 如果是這樣,啟用后它可能會非常昂貴(就執行時間而言)。

  3. 您的申請有多大? 除非很小,否則解析您所需的跟蹤解決方案生成的日志文件可能比自己實施一些目標跟蹤要耗費更多的精力。

盡管您將無法自動獲得行級跟蹤,但是可以使用面向方面的編程來獲得方法級跟蹤,可以在構建后的方法入口\\出口處編織代碼。 您編織的代碼可以跟蹤方法名稱,參數和值等。 諸如PostSharp之類的工具可以自動為您執行此操作:

http://www.sharpcrafters.com/solutions/monitoring#tracing

Mono可滿足您的需求:

http://www.mono-project.com/Debugging

查找有關“跟蹤程序執行”的部分。

Runtime Flow (由我開發)提供了.NET 4.0應用程序的自動功能級別跟蹤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM