我有一項任務將記錄功能添加到現有的基於工作流程的解決方案。有一個分層架構:BusinessLayer-> AgentLayer-> StoreLayer。在業務層有一個由一個或多個代理活動組成的xaml活動。代理活動由一個或多個商店活動組成。代理和商店活動是從CodeActivity繼承的。如何記錄工作流程基礎活動
活動由
WorkflowInvoker.Invoke(activity);
我的任務執行的是記錄每個活動的執行。日誌輸出。應該是例如
BusinessActivity1 has been started at 11:00 8.2.2012
AgentActivity1 has been started at 11:01 8.2.2012
StoreActivity1 has been started at 11:02 8.2.2012
StoreActivity1 has been ended at 11:03 8.2.2012
AgentActivity1 has been ended at 11:04 8.2.2012
BusinessActivity1 has been ended at 11:05 8.2.2012
所以我的問題是什麼是記錄類似這樣的最佳做法。我不想將LogMessage寫入每個活動。我更喜歡統一的解決方案。是否存在任何聰明的解決方案?
感謝
只是一個想法:您可以創建一個自定義活動,將所有其他活動包裝在工作流中。這個自定義活動可以在每次執行內部活動時執行日誌操作。我之前看到過這個模式可行(我沒有任何代碼,很抱歉),並且系統能夠跟蹤工作流服務的執行情況。 – 2012-02-08 14:46:09