github.com/minio/minio@v0.0.0-20240328213742-3f72439b8a27/internal/logger/help.go (about)

     1  // Copyright (c) 2015-2021 MinIO, Inc.
     2  //
     3  // This file is part of MinIO Object Storage stack
     4  //
     5  // This program is free software: you can redistribute it and/or modify
     6  // it under the terms of the GNU Affero General Public License as published by
     7  // the Free Software Foundation, either version 3 of the License, or
     8  // (at your option) any later version.
     9  //
    10  // This program is distributed in the hope that it will be useful
    11  // but WITHOUT ANY WARRANTY; without even the implied warranty of
    12  // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    13  // GNU Affero General Public License for more details.
    14  //
    15  // You should have received a copy of the GNU Affero General Public License
    16  // along with this program.  If not, see <http://www.gnu.org/licenses/>.
    17  
    18  package logger
    19  
    20  import (
    21  	"github.com/minio/minio/internal/config"
    22  )
    23  
    24  // Help template for logger http and audit
    25  var (
    26  	Help = config.HelpKVS{
    27  		config.HelpKV{
    28  			Key:         Endpoint,
    29  			Description: `HTTP(s) endpoint e.g. "http://localhost:8080/minio/logs/server"`,
    30  			Type:        "url",
    31  			Sensitive:   true,
    32  		},
    33  		config.HelpKV{
    34  			Key:         AuthToken,
    35  			Description: `opaque string or JWT authorization token`,
    36  			Optional:    true,
    37  			Type:        "string",
    38  			Sensitive:   true,
    39  			Secret:      true,
    40  		},
    41  		config.HelpKV{
    42  			Key:         ClientCert,
    43  			Description: "mTLS certificate for webhook authentication",
    44  			Optional:    true,
    45  			Type:        "string",
    46  			Sensitive:   true,
    47  		},
    48  		config.HelpKV{
    49  			Key:         ClientKey,
    50  			Description: "mTLS certificate key for webhook authentication",
    51  			Optional:    true,
    52  			Type:        "string",
    53  			Sensitive:   true,
    54  		},
    55  		config.HelpKV{
    56  			Key:         BatchSize,
    57  			Description: "Number of events per HTTP send to webhook target",
    58  			Optional:    true,
    59  			Type:        "number",
    60  		},
    61  		config.HelpKV{
    62  			Key:         QueueSize,
    63  			Description: "configure channel queue size for webhook targets",
    64  			Optional:    true,
    65  			Type:        "number",
    66  		},
    67  		config.HelpKV{
    68  			Key:         QueueDir,
    69  			Description: `staging dir for undelivered logger messages e.g. '/home/logger-events'`,
    70  			Optional:    true,
    71  			Type:        "string",
    72  		},
    73  		config.HelpKV{
    74  			Key:         Proxy,
    75  			Description: "proxy url endpoint e.g. http(s)://proxy",
    76  			Optional:    true,
    77  			Type:        "string",
    78  		},
    79  		config.HelpKV{
    80  			Key:         config.Comment,
    81  			Description: config.DefaultComment,
    82  			Optional:    true,
    83  			Type:        "sentence",
    84  		},
    85  	}
    86  
    87  	HelpWebhook = config.HelpKVS{
    88  		config.HelpKV{
    89  			Key:         Endpoint,
    90  			Description: `HTTP(s) endpoint e.g. "http://localhost:8080/minio/logs/audit"`,
    91  			Type:        "url",
    92  			Sensitive:   true,
    93  		},
    94  		config.HelpKV{
    95  			Key:         AuthToken,
    96  			Description: `opaque string or JWT authorization token`,
    97  			Optional:    true,
    98  			Type:        "string",
    99  			Sensitive:   true,
   100  			Secret:      true,
   101  		},
   102  		config.HelpKV{
   103  			Key:         ClientCert,
   104  			Description: "mTLS certificate for webhook authentication",
   105  			Optional:    true,
   106  			Type:        "string",
   107  			Sensitive:   true,
   108  		},
   109  		config.HelpKV{
   110  			Key:         ClientKey,
   111  			Description: "mTLS certificate key for webhook authentication",
   112  			Optional:    true,
   113  			Type:        "string",
   114  			Sensitive:   true,
   115  		},
   116  		config.HelpKV{
   117  			Key:         BatchSize,
   118  			Description: "Number of events per HTTP send to webhook target",
   119  			Optional:    true,
   120  			Type:        "number",
   121  		},
   122  		config.HelpKV{
   123  			Key:         QueueSize,
   124  			Description: "configure channel queue size for webhook targets",
   125  			Optional:    true,
   126  			Type:        "number",
   127  		},
   128  		config.HelpKV{
   129  			Key:         QueueDir,
   130  			Description: `staging dir for undelivered audit messages e.g. '/home/audit-events'`,
   131  			Optional:    true,
   132  			Type:        "string",
   133  		},
   134  		config.HelpKV{
   135  			Key:         config.Comment,
   136  			Description: config.DefaultComment,
   137  			Optional:    true,
   138  			Type:        "sentence",
   139  		},
   140  	}
   141  
   142  	HelpKafka = config.HelpKVS{
   143  		config.HelpKV{
   144  			Key:         KafkaBrokers,
   145  			Description: "comma separated list of Kafka broker addresses",
   146  			Type:        "csv",
   147  		},
   148  		config.HelpKV{
   149  			Key:         KafkaTopic,
   150  			Description: "Kafka topic used for bucket notifications",
   151  			Optional:    true,
   152  			Type:        "string",
   153  		},
   154  		config.HelpKV{
   155  			Key:         KafkaSASLUsername,
   156  			Description: "username for SASL/PLAIN or SASL/SCRAM authentication",
   157  			Optional:    true,
   158  			Type:        "string",
   159  			Sensitive:   true,
   160  		},
   161  		config.HelpKV{
   162  			Key:         KafkaSASLPassword,
   163  			Description: "password for SASL/PLAIN or SASL/SCRAM authentication",
   164  			Optional:    true,
   165  			Type:        "string",
   166  			Sensitive:   true,
   167  			Secret:      true,
   168  		},
   169  		config.HelpKV{
   170  			Key:         KafkaSASLMechanism,
   171  			Description: "sasl authentication mechanism, default 'plain'",
   172  			Optional:    true,
   173  			Type:        "string",
   174  		},
   175  		config.HelpKV{
   176  			Key:         KafkaTLSClientAuth,
   177  			Description: "clientAuth determines the Kafka server's policy for TLS client auth",
   178  			Optional:    true,
   179  			Type:        "string",
   180  		},
   181  		config.HelpKV{
   182  			Key:         KafkaSASL,
   183  			Description: "set to 'on' to enable SASL authentication",
   184  			Optional:    true,
   185  			Type:        "on|off",
   186  		},
   187  		config.HelpKV{
   188  			Key:         KafkaTLS,
   189  			Description: "set to 'on' to enable TLS",
   190  			Optional:    true,
   191  			Type:        "on|off",
   192  		},
   193  		config.HelpKV{
   194  			Key:         KafkaTLSSkipVerify,
   195  			Description: `trust server TLS without verification, defaults to "on" (verify)`,
   196  			Optional:    true,
   197  			Type:        "on|off",
   198  		},
   199  		config.HelpKV{
   200  			Key:         KafkaClientTLSCert,
   201  			Description: "path to client certificate for mTLS auth",
   202  			Optional:    true,
   203  			Type:        "path",
   204  			Sensitive:   true,
   205  		},
   206  		config.HelpKV{
   207  			Key:         KafkaClientTLSKey,
   208  			Description: "path to client key for mTLS auth",
   209  			Optional:    true,
   210  			Type:        "path",
   211  			Sensitive:   true,
   212  		},
   213  		config.HelpKV{
   214  			Key:         KafkaVersion,
   215  			Description: "specify the version of the Kafka cluster",
   216  			Optional:    true,
   217  			Type:        "string",
   218  		},
   219  		config.HelpKV{
   220  			Key:         QueueSize,
   221  			Description: "configure channel queue size for Kafka targets",
   222  			Optional:    true,
   223  			Type:        "number",
   224  		},
   225  		config.HelpKV{
   226  			Key:         QueueDir,
   227  			Description: `staging dir for undelivered audit messages to Kafka e.g. '/home/audit-events'`,
   228  			Optional:    true,
   229  			Type:        "string",
   230  		},
   231  		config.HelpKV{
   232  			Key:         config.Comment,
   233  			Description: config.DefaultComment,
   234  			Optional:    true,
   235  			Type:        "sentence",
   236  		},
   237  	}
   238  )