apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  annotations:
    controller-gen.kubebuilder.io/version: v0.4.1
  name: outputs.logging.kubesphere.io
spec:
  group: logging.kubesphere.io
  names:
    kind: Output
    listKind: OutputList
    plural: outputs
    singular: output
  scope: Namespaced
  versions:
  - name: v1alpha2
    schema:
      openAPIV3Schema:
        description: Output is the Schema for the outputs API
        properties:
          apiVersion:
            description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
            type: string
          kind:
            description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
            type: string
          metadata:
            type: object
          spec:
            description: OutputSpec defines the desired state of Output
            properties:
              es:
                description: Elasticsearch defines Elasticsearch Output configuration.
                properties:
                  bufferSize:
                    description: Specify the buffer size used to read the response from the Elasticsearch HTTP service. This option is useful for debugging purposes where is required to read full responses, note that response size grows depending of the number of records inserted. To set an unlimited amount of memory set this value to False, otherwise the value must be according to the Unit Size specification.
                    pattern: ^\d+(k|K|KB|kb|m|M|MB|mb|g|G|GB|gb)?$
                    type: string
                  currentTimeIndex:
                    description: Use current time for index generation instead of message record
                    type: boolean
                  generateID:
                    description: When enabled, generate _id for outgoing records. This prevents duplicate records when retrying ES.
                    type: boolean
                  host:
                    description: IP address or hostname of the target Elasticsearch instance
                    type: string
                  httpPassword:
                    description: Password for user defined in HTTP_User
                    properties:
                      valueFrom:
                        description: ValueSource represents a source for the value of a secret.
                        properties:
                          secretKeyRef:
                            description: Selects a key of a secret in the pod's namespace
                            properties:
                              key:
                                description: The key of the secret to select from.  Must be a valid secret key.
                                type: string
                              name:
                                description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?'
                                type: string
                              optional:
                                description: Specify whether the Secret or its key must be defined
                                type: boolean
                            required:
                            - key
                            type: object
                        type: object
                    type: object
                  httpUser:
                    description: Optional username credential for Elastic X-Pack access
                    properties:
                      valueFrom:
                        description: ValueSource represents a source for the value of a secret.
                        properties:
                          secretKeyRef:
                            description: Selects a key of a secret in the pod's namespace
                            properties:
                              key:
                                description: The key of the secret to select from.  Must be a valid secret key.
                                type: string
                              name:
                                description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?'
                                type: string
                              optional:
                                description: Specify whether the Secret or its key must be defined
                                type: boolean
                            required:
                            - key
                            type: object
                        type: object
                    type: object
                  includeTagKey:
                    description: When enabled, it append the Tag name to the record.
                    type: boolean
                  index:
                    description: Index name
                    type: string
                  logstashDateFormat:
                    description: Time format (based on strftime) to generate the second part of the Index name.
                    type: string
                  logstashFormat:
                    description: 'Enable Logstash format compatibility. This option takes a boolean value: True/False, On/Off'
                    type: boolean
                  logstashPrefix:
                    description: 'When Logstash_Format is enabled, the Index name is composed using a prefix and the date, e.g: If Logstash_Prefix is equals to ''mydata'' your index will become ''mydata-YYYY.MM.DD''. The last string appended belongs to the date when the data is being generated.'
                    type: string
                  logstashPrefixKey:
                    description: Prefix keys with this string
                    type: string
                  path:
                    description: Elasticsearch accepts new data on HTTP query path "/_bulk". But it is also possible to serve Elasticsearch behind a reverse proxy on a subpath. This option defines such path on the fluent-bit side. It simply adds a path prefix in the indexing HTTP POST URI.
                    type: string
                  pipeline:
                    description: Newer versions of Elasticsearch allows to setup filters called pipelines. This option allows to define which pipeline the database should use. For performance reasons is strongly suggested to do parsing and filtering on Fluent Bit side, avoid pipelines.
                    type: string
                  port:
                    description: TCP port of the target Elasticsearch instance
                    format: int32
                    maximum: 65535
                    minimum: 1
                    type: integer
                  replaceDots:
                    description: When enabled, replace field name dots with underscore, required by Elasticsearch 2.0-2.3.
                    type: boolean
                  tagKey:
                    description: When Include_Tag_Key is enabled, this property defines the key name for the tag.
                    type: string
                  timeKey:
                    description: When Logstash_Format is enabled, each record will get a new timestamp field. The Time_Key property defines the name of that field.
                    type: string
                  timeKeyFormat:
                    description: When Logstash_Format is enabled, this property defines the format of the timestamp.
                    type: string
                  tls:
                    description: Fluent Bit provides integrated support for Transport Layer Security (TLS) and it predecessor Secure Sockets Layer (SSL) respectively.
                    properties:
                      caFile:
                        description: Absolute path to CA certificate file
                        type: string
                      caPath:
                        description: Absolute path to scan for certificate files
                        type: string
                      crtFile:
                        description: Absolute path to Certificate file
                        type: string
                      debug:
                        description: 'Set TLS debug verbosity level. It accept the following values: 0 (No debug), 1 (Error), 2 (State change), 3 (Informational) and 4 Verbose'
                        enum:
                        - 0
                        - 1
                        - 2
                        - 3
                        - 4
                        format: int32
                        type: integer
                      keyFile:
                        description: Absolute path to private Key file
                        type: string
                      keyPassword:
                        description: Optional password for tls.key_file file
                        properties:
                          valueFrom:
                            description: ValueSource represents a source for the value of a secret.
                            properties:
                              secretKeyRef:
                                description: Selects a key of a secret in the pod's namespace
                                properties:
                                  key:
                                    description: The key of the secret to select from.  Must be a valid secret key.
                                    type: string
                                  name:
                                    description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?'
                                    type: string
                                  optional:
                                    description: Specify whether the Secret or its key must be defined
                                    type: boolean
                                required:
                                - key
                                type: object
                            type: object
                        type: object
                      verify:
                        description: Force certificate validation
                        type: boolean
                      vhost:
                        description: Hostname to be used for TLS SNI extension
                        type: string
                    type: object
                  traceError:
                    description: When enabled print the elasticsearch API calls to stdout when elasticsearch returns an error
                    type: boolean
                  traceOutput:
                    description: When enabled print the elasticsearch API calls to stdout (for diag only)
                    type: boolean
                  type:
                    description: Type name
                    type: string
                type: object
              file:
                description: File defines File Output configuration.
                properties:
                  delimiter:
                    description: The character to separate each pair. Applicable only if format is csv or ltsv.
                    type: string
                  file:
                    description: Set file name to store the records. If not set, the file name will be the tag associated with the records.
                    type: string
                  format:
                    description: 'The format of the file content. See also Format section. Default: out_file.'
                    enum:
                    - out_file
                    - plain
                    - csv
                    - ltsv
                    - template
                    type: string
                  labelDelimiter:
                    description: The character to separate each pair. Applicable only if format is ltsv.
                    type: string
                  path:
                    description: Absolute directory path to store files. If not set, Fluent Bit will write the files on it's own positioned directory.
                    type: string
                  template:
                    description: The format string. Applicable only if format is template.
                    type: string
                type: object
              forward:
                description: Forward defines Forward Output configuration.
                properties:
                  emptySharedKey:
                    description: Use this option to connect to Fluentd with a zero-length secret.
                    type: boolean
                  host:
                    description: Target host where Fluent-Bit or Fluentd are listening for Forward messages.
                    type: string
                  password:
                    description: Specify the password corresponding to the username.
                    properties:
                      valueFrom:
                        description: ValueSource represents a source for the value of a secret.
                        properties:
                          secretKeyRef:
                            description: Selects a key of a secret in the pod's namespace
                            properties:
                              key:
                                description: The key of the secret to select from.  Must be a valid secret key.
                                type: string
                              name:
                                description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?'
                                type: string
                              optional:
                                description: Specify whether the Secret or its key must be defined
                                type: boolean
                            required:
                            - key
                            type: object
                        type: object
                    type: object
                  port:
                    description: TCP Port of the target service.
                    format: int32
                    maximum: 65535
                    minimum: 1
                    type: integer
                  requireAckResponse:
                    description: Send "chunk"-option and wait for "ack" response from server. Enables at-least-once and receiving server can control rate of traffic. (Requires Fluentd v0.14.0+ server)
                    type: boolean
                  selfHostname:
                    description: Default value of the auto-generated certificate common name (CN).
                    type: string
                  sendOptions:
                    description: Always send options (with "size"=count of messages)
                    type: boolean
                  sharedKey:
                    description: A key string known by the remote Fluentd used for authorization.
                    type: string
                  timeAsInteger:
                    description: Set timestamps in integer format, it enable compatibility mode for Fluentd v0.12 series.
                    type: boolean
                  tls:
                    description: Fluent Bit provides integrated support for Transport Layer Security (TLS) and it predecessor Secure Sockets Layer (SSL) respectively.
                    properties:
                      caFile:
                        description: Absolute path to CA certificate file
                        type: string
                      caPath:
                        description: Absolute path to scan for certificate files
                        type: string
                      crtFile:
                        description: Absolute path to Certificate file
                        type: string
                      debug:
                        description: 'Set TLS debug verbosity level. It accept the following values: 0 (No debug), 1 (Error), 2 (State change), 3 (Informational) and 4 Verbose'
                        enum:
                        - 0
                        - 1
                        - 2
                        - 3
                        - 4
                        format: int32
                        type: integer
                      keyFile:
                        description: Absolute path to private Key file
                        type: string
                      keyPassword:
                        description: Optional password for tls.key_file file
                        properties:
                          valueFrom:
                            description: ValueSource represents a source for the value of a secret.
                            properties:
                              secretKeyRef:
                                description: Selects a key of a secret in the pod's namespace
                                properties:
                                  key:
                                    description: The key of the secret to select from.  Must be a valid secret key.
                                    type: string
                                  name:
                                    description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?'
                                    type: string
                                  optional:
                                    description: Specify whether the Secret or its key must be defined
                                    type: boolean
                                required:
                                - key
                                type: object
                            type: object
                        type: object
                      verify:
                        description: Force certificate validation
                        type: boolean
                      vhost:
                        description: Hostname to be used for TLS SNI extension
                        type: string
                    type: object
                  username:
                    description: Specify the username to present to a Fluentd server that enables user_auth.
                    properties:
                      valueFrom:
                        description: ValueSource represents a source for the value of a secret.
                        properties:
                          secretKeyRef:
                            description: Selects a key of a secret in the pod's namespace
                            properties:
                              key:
                                description: The key of the secret to select from.  Must be a valid secret key.
                                type: string
                              name:
                                description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?'
                                type: string
                              optional:
                                description: Specify whether the Secret or its key must be defined
                                type: boolean
                            required:
                            - key
                            type: object
                        type: object
                    type: object
                type: object
              http:
                description: HTTP defines HTTP Output configuration.
                properties:
                  allowDuplicatedHeaders:
                    description: Specify if duplicated headers are allowed. If a duplicated header is found, the latest key/value set is preserved.
                    type: boolean
                  compress:
                    description: Set payload compression mechanism. Option available is 'gzip'
                    type: string
                  format:
                    description: Specify the data format to be used in the HTTP request body, by default it uses msgpack. Other supported formats are json, json_stream and json_lines and gelf.
                    enum:
                    - msgpack
                    - json
                    - json_stream
                    - json_lines
                    - gelf
                    type: string
                  gelfFullMessageKey:
                    description: Specify the key to use for the full message in gelf format
                    type: string
                  gelfHostKey:
                    description: Specify the key to use for the host in gelf format
                    type: string
                  gelfLevelKey:
                    description: Specify the key to use for the level in gelf format
                    type: string
                  gelfShortMessgeKey:
                    description: Specify the key to use as the short message in gelf format
                    type: string
                  gelfTimestampKey:
                    description: Specify the key to use for timestamp in gelf format
                    type: string
                  headerTag:
                    description: Specify an optional HTTP header field for the original message tag.
                    type: string
                  headers:
                    additionalProperties:
                      type: string
                    description: Add a HTTP header key/value pair. Multiple headers can be set.
                    type: object
                  host:
                    description: IP address or hostname of the target HTTP Server
                    type: string
                  httpPassword:
                    description: Basic Auth Password. Requires HTTP_User to be set
                    properties:
                      valueFrom:
                        description: ValueSource represents a source for the value of a secret.
                        properties:
                          secretKeyRef:
                            description: Selects a key of a secret in the pod's namespace
                            properties:
                              key:
                                description: The key of the secret to select from.  Must be a valid secret key.
                                type: string
                              name:
                                description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?'
                                type: string
                              optional:
                                description: Specify whether the Secret or its key must be defined
                                type: boolean
                            required:
                            - key
                            type: object
                        type: object
                    type: object
                  httpUser:
                    description: Basic Auth Username
                    properties:
                      valueFrom:
                        description: ValueSource represents a source for the value of a secret.
                        properties:
                          secretKeyRef:
                            description: Selects a key of a secret in the pod's namespace
                            properties:
                              key:
                                description: The key of the secret to select from.  Must be a valid secret key.
                                type: string
                              name:
                                description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?'
                                type: string
                              optional:
                                description: Specify whether the Secret or its key must be defined
                                type: boolean
                            required:
                            - key
                            type: object
                        type: object
                    type: object
                  jsonDateFormat:
                    description: 'Specify the format of the date. Supported formats are double, epoch and iso8601 (eg: 2018-05-30T09:39:52.000681Z)'
                    type: string
                  jsonDateKey:
                    description: Specify the name of the time key in the output record. To disable the time key just set the value to false.
                    type: string
                  port:
                    description: TCP port of the target HTTP Server
                    format: int32
                    maximum: 65535
                    minimum: 1
                    type: integer
                  proxy:
                    description: Specify an HTTP Proxy. The expected format of this value is http://host:port. Note that https is not supported yet.
                    type: string
                  tls:
                    description: HTTP output plugin supports TTL/SSL, for more details about the properties available and general configuration, please refer to the TLS/SSL section.
                    properties:
                      caFile:
                        description: Absolute path to CA certificate file
                        type: string
                      caPath:
                        description: Absolute path to scan for certificate files
                        type: string
                      crtFile:
                        description: Absolute path to Certificate file
                        type: string
                      debug:
                        description: 'Set TLS debug verbosity level. It accept the following values: 0 (No debug), 1 (Error), 2 (State change), 3 (Informational) and 4 Verbose'
                        enum:
                        - 0
                        - 1
                        - 2
                        - 3
                        - 4
                        format: int32
                        type: integer
                      keyFile:
                        description: Absolute path to private Key file
                        type: string
                      keyPassword:
                        description: Optional password for tls.key_file file
                        properties:
                          valueFrom:
                            description: ValueSource represents a source for the value of a secret.
                            properties:
                              secretKeyRef:
                                description: Selects a key of a secret in the pod's namespace
                                properties:
                                  key:
                                    description: The key of the secret to select from.  Must be a valid secret key.
                                    type: string
                                  name:
                                    description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?'
                                    type: string
                                  optional:
                                    description: Specify whether the Secret or its key must be defined
                                    type: boolean
                                required:
                                - key
                                type: object
                            type: object
                        type: object
                      verify:
                        description: Force certificate validation
                        type: boolean
                      vhost:
                        description: Hostname to be used for TLS SNI extension
                        type: string
                    type: object
                  uri:
                    description: 'Specify an optional HTTP URI for the target web server, e.g: /something'
                    type: string
                type: object
              kafka:
                description: Kafka defines Kafka Output configuration.
                properties:
                  brokers:
                    description: 'Single of multiple list of Kafka Brokers, e.g: 192.168.1.3:9092, 192.168.1.4:9092.'
                    type: string
                  format:
                    description: 'Specify data format, options available: json, msgpack.'
                    type: string
                  messageKey:
                    description: Optional key to store the message
                    type: string
                  messageKeyField:
                    description: If set, the value of Message_Key_Field in the record will indicate the message key. If not set nor found in the record, Message_Key will be used (if set).
                    type: string
                  rdkafka:
                    additionalProperties:
                      type: string
                    description: '{property} can be any librdkafka properties'
                    type: object
                  timestampFormat:
                    description: iso8601 or double
                    type: string
                  timestampKey:
                    description: Set the key to store the record timestamp
                    type: string
                  topicKey:
                    description: 'If multiple Topics exists, the value of Topic_Key in the record will indicate the topic to use. E.g: if Topic_Key is router and the record is {"key1": 123, "router": "route_2"}, Fluent Bit will use topic route_2. Note that if the value of Topic_Key is not present in Topics, then by default the first topic in the Topics list will indicate the topic to be used.'
                    type: string
                  topics:
                    description: Single entry or list of topics separated by comma (,) that Fluent Bit will use to send messages to Kafka. If only one topic is set, that one will be used for all records. Instead if multiple topics exists, the one set in the record by Topic_Key will be used.
                    type: string
                type: object
              loki:
                description: Loki defines Loki Output configuration.
                properties:
                  autoKubernetesLabels:
                    description: If set to true, it will add all Kubernetes labels to the Stream labels.
                    enum:
                    - "on"
                    - "off"
                    type: string
                  host:
                    description: Loki hostname or IP address.
                    type: string
                  httpPassword:
                    description: Password for user defined in HTTP_User Set HTTP basic authentication password
                    properties:
                      valueFrom:
                        description: ValueSource represents a source for the value of a secret.
                        properties:
                          secretKeyRef:
                            description: Selects a key of a secret in the pod's namespace
                            properties:
                              key:
                                description: The key of the secret to select from.  Must be a valid secret key.
                                type: string
                              name:
                                description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?'
                                type: string
                              optional:
                                description: Specify whether the Secret or its key must be defined
                                type: boolean
                            required:
                            - key
                            type: object
                        type: object
                    type: object
                  httpUser:
                    description: Set HTTP basic authentication user name.
                    properties:
                      valueFrom:
                        description: ValueSource represents a source for the value of a secret.
                        properties:
                          secretKeyRef:
                            description: Selects a key of a secret in the pod's namespace
                            properties:
                              key:
                                description: The key of the secret to select from.  Must be a valid secret key.
                                type: string
                              name:
                                description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?'
                                type: string
                              optional:
                                description: Specify whether the Secret or its key must be defined
                                type: boolean
                            required:
                            - key
                            type: object
                        type: object
                    type: object
                  labelKeys:
                    description: Optional list of record keys that will be placed as stream labels. This configuration property is for records key only.
                    items:
                      type: string
                    type: array
                  labels:
                    description: Stream labels for API request. It can be multiple comma separated of strings specifying  key=value pairs. In addition to fixed parameters, it also allows to add custom record keys (similar to label_keys property).
                    items:
                      type: string
                    type: array
                  lineFormat:
                    description: Format to use when flattening the record to a log line. Valid values are json or key_value. If set to json,  the log line sent to Loki will be the Fluent Bit record dumped as JSON. If set to key_value, the log line will be each item in the record concatenated together (separated by a single space) in the format.
                    enum:
                    - json
                    - key_value
                    type: string
                  port:
                    description: Loki TCP port
                    format: int32
                    maximum: 65535
                    minimum: 1
                    type: integer
                  tenantID:
                    description: Tenant ID used by default to push logs to Loki. If omitted or empty it assumes Loki is running in single-tenant mode and no X-Scope-OrgID header is sent.
                    properties:
                      valueFrom:
                        description: ValueSource represents a source for the value of a secret.
                        properties:
                          secretKeyRef:
                            description: Selects a key of a secret in the pod's namespace
                            properties:
                              key:
                                description: The key of the secret to select from.  Must be a valid secret key.
                                type: string
                              name:
                                description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?'
                                type: string
                              optional:
                                description: Specify whether the Secret or its key must be defined
                                type: boolean
                            required:
                            - key
                            type: object
                        type: object
                    type: object
                  tls:
                    description: Fluent Bit provides integrated support for Transport Layer Security (TLS) and it predecessor Secure Sockets Layer (SSL) respectively.
                    properties:
                      caFile:
                        description: Absolute path to CA certificate file
                        type: string
                      caPath:
                        description: Absolute path to scan for certificate files
                        type: string
                      crtFile:
                        description: Absolute path to Certificate file
                        type: string
                      debug:
                        description: 'Set TLS debug verbosity level. It accept the following values: 0 (No debug), 1 (Error), 2 (State change), 3 (Informational) and 4 Verbose'
                        enum:
                        - 0
                        - 1
                        - 2
                        - 3
                        - 4
                        format: int32
                        type: integer
                      keyFile:
                        description: Absolute path to private Key file
                        type: string
                      keyPassword:
                        description: Optional password for tls.key_file file
                        properties:
                          valueFrom:
                            description: ValueSource represents a source for the value of a secret.
                            properties:
                              secretKeyRef:
                                description: Selects a key of a secret in the pod's namespace
                                properties:
                                  key:
                                    description: The key of the secret to select from.  Must be a valid secret key.
                                    type: string
                                  name:
                                    description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?'
                                    type: string
                                  optional:
                                    description: Specify whether the Secret or its key must be defined
                                    type: boolean
                                required:
                                - key
                                type: object
                            type: object
                        type: object
                      verify:
                        description: Force certificate validation
                        type: boolean
                      vhost:
                        description: Hostname to be used for TLS SNI extension
                        type: string
                    type: object
                required:
                - host
                type: object
              match:
                description: A pattern to match against the tags of incoming records. It's case sensitive and support the star (*) character as a wildcard.
                type: string
              matchRegex:
                description: A regular expression to match against the tags of incoming records. Use this option if you want to use the full regex syntax.
                type: string
              "null":
                description: Null defines Null Output configuration.
                type: object
              stdout:
                description: Stdout defines Stdout Output configuration.
                properties:
                  format:
                    description: Specify the data format to be printed. Supported formats are msgpack json, json_lines and json_stream.
                    enum:
                    - msgpack
                    - json
                    - json_lines
                    - json_stream
                    type: string
                  jsonDateFormat:
                    description: 'Specify the format of the date. Supported formats are double,  iso8601 (eg: 2018-05-30T09:39:52.000681Z) and epoch.'
                    enum:
                    - double
                    - iso8601
                    - epoch
                    type: string
                  jsonDateKey:
                    description: Specify the name of the date field in output.
                    type: string
                type: object
              tcp:
                description: TCP defines TCP Output configuration.
                properties:
                  format:
                    description: Specify the data format to be printed. Supported formats are msgpack json, json_lines and json_stream.
                    enum:
                    - msgpack
                    - json
                    - json_lines
                    - json_stream
                    type: string
                  host:
                    description: Target host where Fluent-Bit or Fluentd are listening for Forward messages.
                    type: string
                  jsonDateFormat:
                    description: 'Specify the format of the date. Supported formats are double, epoch and iso8601 (eg: 2018-05-30T09:39:52.000681Z)'
                    enum:
                    - double
                    - epoch
                    - iso8601
                    type: string
                  jsonDateKey:
                    description: TSpecify the name of the time key in the output record. To disable the time key just set the value to false.
                    type: string
                  port:
                    description: TCP Port of the target service.
                    format: int32
                    maximum: 65535
                    minimum: 1
                    type: integer
                  tls:
                    description: Fluent Bit provides integrated support for Transport Layer Security (TLS) and it predecessor Secure Sockets Layer (SSL) respectively.
                    properties:
                      caFile:
                        description: Absolute path to CA certificate file
                        type: string
                      caPath:
                        description: Absolute path to scan for certificate files
                        type: string
                      crtFile:
                        description: Absolute path to Certificate file
                        type: string
                      debug:
                        description: 'Set TLS debug verbosity level. It accept the following values: 0 (No debug), 1 (Error), 2 (State change), 3 (Informational) and 4 Verbose'
                        enum:
                        - 0
                        - 1
                        - 2
                        - 3
                        - 4
                        format: int32
                        type: integer
                      keyFile:
                        description: Absolute path to private Key file
                        type: string
                      keyPassword:
                        description: Optional password for tls.key_file file
                        properties:
                          valueFrom:
                            description: ValueSource represents a source for the value of a secret.
                            properties:
                              secretKeyRef:
                                description: Selects a key of a secret in the pod's namespace
                                properties:
                                  key:
                                    description: The key of the secret to select from.  Must be a valid secret key.
                                    type: string
                                  name:
                                    description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?'
                                    type: string
                                  optional:
                                    description: Specify whether the Secret or its key must be defined
                                    type: boolean
                                required:
                                - key
                                type: object
                            type: object
                        type: object
                      verify:
                        description: Force certificate validation
                        type: boolean
                      vhost:
                        description: Hostname to be used for TLS SNI extension
                        type: string
                    type: object
                type: object
            type: object
        type: object
    served: true
    storage: true
status:
  acceptedNames:
    kind: ""
    plural: ""
  conditions: []
  storedVersions: []