<gh_stars>0// *** 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;
using Pulumi;

namespace TencentCloudIAC.PulumiPackage.Tencentcloud.Cynosdb.Inputs
{

    public sealed class AuditLogFileFilterArgs : Pulumi.ResourceArgs
    {
        /// <summary>
        /// Affects the number of rows. Indicates that the audit log whose number of affected rows is greater than this value is filtered.
        /// </summary>
        [Input("affectRows")]
        public Input<int>? AffectRows { get; set; }

        [Input("dbNames")]
        private InputList<string>? _dbNames;

        /// <summary>
        /// The name of database.
        /// </summary>
        public InputList<string> DbNames
        {
            get => _dbNames ?? (_dbNames = new InputList<string>());
            set => _dbNames = value;
        }

        /// <summary>
        /// Execution time. The unit is: ms. Indicates to filter audit logs whose execution time is greater than this value.
        /// </summary>
        [Input("execTime")]
        public Input<int>? ExecTime { get; set; }

        [Input("hosts")]
        private InputList<string>? _hosts;

        /// <summary>
        /// Client host.
        /// </summary>
        public InputList<string> Hosts
        {
            get => _hosts ?? (_hosts = new InputList<string>());
            set => _hosts = value;
        }

        [Input("policyNames")]
        private InputList<string>? _policyNames;

        /// <summary>
        /// The name of audit policy.
        /// </summary>
        public InputList<string> PolicyNames
        {
            get => _policyNames ?? (_policyNames = new InputList<string>());
            set => _policyNames = value;
        }

        /// <summary>
        /// Return the number of rows.
        /// </summary>
        [Input("sentRows")]
        public Input<int>? SentRows { get; set; }

        /// <summary>
        /// SQL statement. Support fuzzy matching.
        /// </summary>
        [Input("sql")]
        public Input<string>? Sql { get; set; }

        /// <summary>
        /// SQL type. currently supported: SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, ALTER, SET, REPLACE, EXECUTE.
        /// </summary>
        [Input("sqlType")]
        public Input<string>? SqlType { get; set; }

        [Input("sqlTypes")]
        private InputList<string>? _sqlTypes;

        /// <summary>
        /// SQL type. Supports simultaneous query of multiple types. currently supported: SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, ALTER, SET, REPLACE, EXECUTE.
        /// </summary>
        public InputList<string> SqlTypes
        {
            get => _sqlTypes ?? (_sqlTypes = new InputList<string>());
            set => _sqlTypes = value;
        }

        [Input("sqls")]
        private InputList<string>? _sqls;

        /// <summary>
        /// SQL statement. Support passing multiple sql statements.
        /// </summary>
        public InputList<string> Sqls
        {
            get => _sqls ?? (_sqls = new InputList<string>());
            set => _sqls = value;
        }

        [Input("tableNames")]
        private InputList<string>? _tableNames;

        /// <summary>
        /// The name of table.
        /// </summary>
        public InputList<string> TableNames
        {
            get => _tableNames ?? (_tableNames = new InputList<string>());
            set => _tableNames = value;
        }

        [Input("threadIds")]
        private InputList<string>? _threadIds;

        /// <summary>
        /// The ID of thread.
        /// </summary>
        public InputList<string> ThreadIds
        {
            get => _threadIds ?? (_threadIds = new InputList<string>());
            set => _threadIds = value;
        }

        [Input("users")]
        private InputList<string>? _users;

        /// <summary>
        /// User name.
        /// </summary>
        public InputList<string> Users
        {
            get => _users ?? (_users = new InputList<string>());
            set => _users = value;
        }

        public AuditLogFileFilterArgs()
        {
        }
    }
}
