Activity 類別

定義

表示要用於記錄的內容作業。

public ref class Activity : IDisposable
public ref class Activity
public class Activity : IDisposable
public class Activity
type Activity = class
    interface IDisposable
type Activity = class
Public Class Activity
Implements IDisposable
Public Class Activity
繼承
Activity
實作

備註

Activity具有作業名稱、識別碼、開始時間和持續時間、標記和重量。

您可以使用靜態 Activity.Current 屬性來存取目前的活動。

活動應該藉由呼叫建構函式、視需要設定,然後以 Start 方法啟動,以維護活動的父子關聯性並設定 Activity.Current

活動完成時,應該使用 Activity.Stop() 方法停止活動。

不過,如果您處置 Activity 物件,這會停止它,因此您不需要明確呼叫 Activity.Stop() 。 這可簡化編碼模式。 如需詳細資訊,請參閱 Dispose 方法。

沒有 Activity 方法允許例外狀況逸出,以回應不正確的輸入。 系統會擲回並攔截 (,讓偵錯工具和監視器看到錯誤) ,但會隱藏例外狀況,而作業通常會執行合理的 (通常不會執行任何) 。

建構函式

Activity(String)

初始化 Activity 類別的新執行個體。

屬性

ActivityTraceFlags

取得或設定與活動相關聯的旗標 (由 W3C 識別碼規格所定義)。

Baggage

取得索引鍵/值組的集合,表示傳遞至此 Activity 子系的資訊。

Context

取得活動的內容。 只有當活動已啟動時,內容才會變成有效。

Current

取得或設定目前執行緒的目前作業 (Activity)。 這會流經非同步呼叫。

DefaultIdFormat

取得或設定 Activity 的預設識別碼格式。

DisplayName

取得或設定活動的顯示名稱。

Duration

取得作業的持續期間。

Events

取得附加至此活動的所有活動事件清單。

ForceDefaultIdFormat

取得或設定值,判斷是否一律使用 DefaultIdFormat 定義預設識別碼格式。

HasRemoteParent

取得值,這個值表示是否從遠端傳播建立父內容。

Id

取得特別要求的特定識別碼。

IdFormat

取得 Id 的格式。

IsAllDataRequested

取得或設定值,此值指出此活動是否應該填入所有傳播資訊,以及其他所有屬性,例如連結、標籤與事件。

IsStopped

取得值,這個值表示這個 Activity 物件是否停止。

Kind

取得活動、其父代與追蹤中其子系之間的關聯性。

Links

取得附加至此活動之所有活動連結的清單。

OperationName

取得作業名稱。

Parent

取得建立此活動的父代 Activity

ParentId

取得此活動的父代識別碼。

ParentSpanId

取得父 SpanId

Recorded

取得值,指出是否已設定 W3CIdFlags.Recorded 旗標。

RootId

取得此 Activity 的根識別碼。

Source

取得與此活動相關聯的活動來源。

SpanId

取得 Id 的 SPAN 部分。

StartTimeUtc

取得作業開始的時間。

Status

取得目前活動物件的狀態碼。

StatusDescription

取得目前活動物件的狀態原因。

TagObjects

取得標籤清單,這些標籤代表要與活動一起記錄的資訊。 此資訊不會傳遞到此活動的子系。

Tags

取得索引鍵/值組的集合,代表連同 Activity 一起記錄在登入系統的資訊。

TraceId

取得 Id 的 TraceId 部分。

TraceIdGenerator

啟動沒有父內容的活動時,追蹤識別碼會自動使用亂數產生。 TraceIdGenerator 可用來覆寫執行時間的預設追蹤識別碼產生演算法。

TraceStateString

取得或設定 W3C tracestate 標頭。

方法

AddBaggage(String, String)

更新 Activity 讓新行李項目具有指定的索引鍵和值。

AddEvent(ActivityEvent)

將指定的活動事件加入事件清單。

AddTag(String, Object)

更新活動,使其具有包含其他 keyvalue 的標籤。

AddTag(String, String)

更新 Activity 讓新標籤擁有提供的 keyvalue

Dispose()

停止活動 (如果已啟動),並通知所有事件接聽程式。 否則不會發生任何情況。

Dispose(Boolean)

由衍生型別覆寫時,此方法會釋放任何已配置的資源。

EnumerateEvents()

列舉 ActivityEvent 附加至這個 Activity 物件的物件。

EnumerateLinks()

列舉 ActivityLink 附加至這個 Activity 物件的物件。

EnumerateTagObjects()

列舉附加至這個 Activity 物件的標記。

Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
GetBaggageItem(String)

傳回新增至活動之索引鍵/值組的值和 AddBaggage(String, String)

GetCustomProperty(String)

傳回對應至所指定屬性名稱的物件。

GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetTagItem(String)

傳回對應至輸入索引鍵 > /之 Activity 標記的值。 如果該索引鍵不存在,則傳 null 回 。

GetType()

取得目前執行個體的 Type

(繼承來源 Object)
MemberwiseClone()

建立目前 Object 的淺層複製。

(繼承來源 Object)
SetBaggage(String, String)

使用輸入索引鍵和值來新增或更新活動重量。 如果輸入值為 null - 如果集合有任何含有相同索引鍵的重量,則此重量將會從集合中移除。 - 否則不會發生任何動作,而且集合不會變更。 如果輸入值不是 null - 如果集合有任何含有相同索引鍵的重量,則對應至此索引鍵的值將會以新的輸入值來更新。 - 否則,索引鍵和值會新增為集合的新重量。 只有在原始新增至目前活動時,才會更新/移除包包專案。 繼承自父代的專案將不會變更/移除,新的專案會改為新增至目前的活動存放區。

SetCustomProperty(String, Object)

將任何自訂物件附加至此活動。 如果指定的 propertyName 先前與另一個物件相關聯,則會將屬性更新為改與新的 propertyValue 相關聯。 建議使用不重複的屬性名稱,以避免與使用相同值的任何人發生衝突。

SetEndTime(DateTime)

更新 Activity 以將其 Duration 設定為 StartTimeUtc 和所指定停止時間之間的差異。

SetIdFormat(ActivityIdFormat)

在此 Activity 啟動之前,先在上面設定識別碼格式。

SetParentId(ActivityTraceId, ActivitySpanId, ActivityTraceFlags)

使用 TraceId 和 SpanId 的 W3C 慣例來設定父代識別碼。

SetParentId(String)

更新此 Activity 以指出識別碼為 parentIdActivity 導致此 Activity

SetStartTime(DateTime)

設定這個 Activity 的開始時間。

SetStatus(ActivityStatusCode, String)

設定目前活動物件的狀態碼和描述。

SetTag(String, Object)

使用輸入機碼與值來加入或更新活動標籤。

Start()

啟動活動。

Stop()

停止活動。

ToString()

傳回代表目前物件的字串。

(繼承來源 Object)

事件

CurrentChanged

發生於 Current 值變更時。

適用於