<filename>sdk/dotnet/ServiceMesh/Outputs/ServiceMeshMeshConfig.cs// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;

namespace Pulumi.AliCloud.ServiceMesh.Outputs
{

    [OutputType]
    public sealed class ServiceMeshMeshConfig
    {
        /// <summary>
        /// The configuration of the access logging.
        /// </summary>
        public readonly Outputs.ServiceMeshMeshConfigAccessLog? AccessLog;
        /// <summary>
        /// The configuration of the audit. See the following `Block audit`.
        /// </summary>
        public readonly Outputs.ServiceMeshMeshConfigAudit? Audit;
        /// <summary>
        /// The configuration of the control plane logging.
        /// </summary>
        public readonly Outputs.ServiceMeshMeshConfigControlPlaneLog? ControlPlaneLog;
        /// <summary>
        /// Whether to enable the use of a custom zipkin.
        /// </summary>
        public readonly bool? CustomizedZipkin;
        /// <summary>
        /// The enable locality lb.
        /// </summary>
        public readonly bool? EnableLocalityLb;
        /// <summary>
        /// The configuration of the Kiali. See the following `Block kiali`.
        /// </summary>
        public readonly Outputs.ServiceMeshMeshConfigKiali? Kiali;
        /// <summary>
        /// The open-door policy of agent (OPA) plug-in information. See the following `Block opa`.
        /// </summary>
        public readonly Outputs.ServiceMeshMeshConfigOpa? Opa;
        /// <summary>
        /// The policy of the Out to the traffic. Valid values: `ALLOW_ANY` and `REGISTRY_ONLY`.
        /// </summary>
        public readonly string? OutboundTrafficPolicy;
        /// <summary>
        /// The configuration of the Link trace sampling. See the following `Block pilot`.
        /// </summary>
        public readonly Outputs.ServiceMeshMeshConfigPilot? Pilot;
        /// <summary>
        /// The configuration of the Proxy. See the following `Block proxy`.
        /// </summary>
        public readonly Outputs.ServiceMeshMeshConfigProxy? Proxy;
        /// <summary>
        /// The configuration of the Sidecar injector. See the following `Block sidecar_injector`.
        /// </summary>
        public readonly Outputs.ServiceMeshMeshConfigSidecarInjector? SidecarInjector;
        /// <summary>
        /// Whether to enable acquisition Prometheus metrics (it is recommended that you use [Alibaba Cloud Prometheus monitoring](https://arms.console.aliyun.com/).
        /// </summary>
        public readonly bool? Telemetry;
        /// <summary>
        /// Whether to enable link trace (you need to have [Alibaba Cloud link tracking service](https://tracing-analysis.console.aliyun.com/).
        /// </summary>
        public readonly bool? Tracing;

        [OutputConstructor]
        private ServiceMeshMeshConfig(
            Outputs.ServiceMeshMeshConfigAccessLog? accessLog,

            Outputs.ServiceMeshMeshConfigAudit? audit,

            Outputs.ServiceMeshMeshConfigControlPlaneLog? controlPlaneLog,

            bool? customizedZipkin,

            bool? enableLocalityLb,

            Outputs.ServiceMeshMeshConfigKiali? kiali,

            Outputs.ServiceMeshMeshConfigOpa? opa,

            string? outboundTrafficPolicy,

            Outputs.ServiceMeshMeshConfigPilot? pilot,

            Outputs.ServiceMeshMeshConfigProxy? proxy,

            Outputs.ServiceMeshMeshConfigSidecarInjector? sidecarInjector,

            bool? telemetry,

            bool? tracing)
        {
            AccessLog = accessLog;
            Audit = audit;
            ControlPlaneLog = controlPlaneLog;
            CustomizedZipkin = customizedZipkin;
            EnableLocalityLb = enableLocalityLb;
            Kiali = kiali;
            Opa = opa;
            OutboundTrafficPolicy = outboundTrafficPolicy;
            Pilot = pilot;
            Proxy = proxy;
            SidecarInjector = sidecarInjector;
            Telemetry = telemetry;
            Tracing = tracing;
        }
    }
}
