// Copyright (c) Microsoft. All rights reserved.
namespace Microsoft.Agents.AI.Workflows.Observability;
///
/// Configuration options for workflow telemetry.
///
public sealed class WorkflowTelemetryOptions
{
///
/// Gets or sets a value indicating whether potentially sensitive information should be included in telemetry.
///
///
/// if potentially sensitive information should be included in telemetry;
/// if telemetry shouldn't include raw inputs and outputs.
/// The default value is .
///
///
/// By default, telemetry includes metadata but not raw inputs and outputs,
/// such as message content and executor data.
///
public bool EnableSensitiveData { get; set; }
///
/// Gets or sets a value indicating whether workflow build activities should be disabled.
///
///
/// to disable workflow.build activities;
/// to enable them. The default value is .
///
public bool DisableWorkflowBuild { get; set; }
///
/// Gets or sets a value indicating whether workflow run activities should be disabled.
///
///
/// to disable workflow_invoke activities;
/// to enable them. The default value is .
///
public bool DisableWorkflowRun { get; set; }
///
/// Gets or sets a value indicating whether executor process activities should be disabled.
///
///
/// to disable executor.process activities;
/// to enable them. The default value is .
///
public bool DisableExecutorProcess { get; set; }
///
/// Gets or sets a value indicating whether edge group process activities should be disabled.
///
///
/// to disable edge_group.process activities;
/// to enable them. The default value is .
///
public bool DisableEdgeGroupProcess { get; set; }
///
/// Gets or sets a value indicating whether message send activities should be disabled.
///
///
/// to disable message.send activities;
/// to enable them. The default value is .
///
public bool DisableMessageSend { get; set; }
}