/* * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with * the License. A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions * and limitations under the License. */ package com.amazonaws.services.batch.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.protocol.StructuredPojo; import com.amazonaws.protocol.ProtocolMarshaller; /** *
* Log configuration options to send to a custom log driver for the container. *
* * @see AWS API * Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class LogConfiguration implements Serializable, Cloneable, StructuredPojo { /** ** The log driver to use for the container. The valid values that are listed for this parameter are log drivers that * the Amazon ECS container agent can communicate with by default. *
*
* The supported log drivers are awslogs
, fluentd
, gelf
,
* json-file
, journald
, logentries
, syslog
, and
* splunk
.
*
* Jobs that are running on Fargate resources are restricted to the awslogs
and splunk
log
* drivers.
*
* Specifies the Amazon CloudWatch Logs logging driver. For more information, see Using the awslogs log driver in * the Batch User Guide and Amazon * CloudWatch Logs logging driver in the Docker documentation. *
** Specifies the Fluentd logging driver. For more information including usage and options, see Fluentd logging driver in the Docker * documentation. *
** Specifies the Graylog Extended Format (GELF) logging driver. For more information including usage and options, * see Graylog Extended Format logging driver * in the Docker documentation. *
** Specifies the journald logging driver. For more information including usage and options, see Journald logging driver in the Docker * documentation. *
** Specifies the JSON file logging driver. For more information including usage and options, see JSON File logging driver in the Docker * documentation. *
** Specifies the Splunk logging driver. For more information including usage and options, see Splunk logging driver in the Docker * documentation. *
** Specifies the syslog logging driver. For more information including usage and options, see Syslog logging driver in the Docker * documentation. *
** If you have a custom driver that's not listed earlier that you want to work with the Amazon ECS container agent, * you can fork the Amazon ECS container agent project that's available on GitHub and customize it to work with that driver. * We encourage you to submit pull requests for changes that you want to have included. However, Amazon Web Services * doesn't currently support running modified copies of this software. *
*
* This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the
* Docker Remote API version on your container instance, log in to your container instance and run the following
* command: sudo docker version | grep "Server API version"
*
* The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote
* API or greater on your container instance. To check the Docker Remote API version on your container instance, log
* in to your container instance and run the following command:
* sudo docker version | grep "Server API version"
*
* The secrets to pass to the log configuration. For more information, see Specifying sensitive * data in the Batch User Guide. *
*/ private java.util.List* The log driver to use for the container. The valid values that are listed for this parameter are log drivers that * the Amazon ECS container agent can communicate with by default. *
*
* The supported log drivers are awslogs
, fluentd
, gelf
,
* json-file
, journald
, logentries
, syslog
, and
* splunk
.
*
* Jobs that are running on Fargate resources are restricted to the awslogs
and splunk
log
* drivers.
*
* Specifies the Amazon CloudWatch Logs logging driver. For more information, see Using the awslogs log driver in * the Batch User Guide and Amazon * CloudWatch Logs logging driver in the Docker documentation. *
** Specifies the Fluentd logging driver. For more information including usage and options, see Fluentd logging driver in the Docker * documentation. *
** Specifies the Graylog Extended Format (GELF) logging driver. For more information including usage and options, * see Graylog Extended Format logging driver * in the Docker documentation. *
** Specifies the journald logging driver. For more information including usage and options, see Journald logging driver in the Docker * documentation. *
** Specifies the JSON file logging driver. For more information including usage and options, see JSON File logging driver in the Docker * documentation. *
** Specifies the Splunk logging driver. For more information including usage and options, see Splunk logging driver in the Docker * documentation. *
** Specifies the syslog logging driver. For more information including usage and options, see Syslog logging driver in the Docker * documentation. *
** If you have a custom driver that's not listed earlier that you want to work with the Amazon ECS container agent, * you can fork the Amazon ECS container agent project that's available on GitHub and customize it to work with that driver. * We encourage you to submit pull requests for changes that you want to have included. However, Amazon Web Services * doesn't currently support running modified copies of this software. *
*
* This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the
* Docker Remote API version on your container instance, log in to your container instance and run the following
* command: sudo docker version | grep "Server API version"
*
* The supported log drivers are awslogs
, fluentd
, gelf
,
* json-file
, journald
, logentries
, syslog
, and
* splunk
.
*
* Jobs that are running on Fargate resources are restricted to the awslogs
and
* splunk
log drivers.
*
* Specifies the Amazon CloudWatch Logs logging driver. For more information, see Using the awslogs log * driver in the Batch User Guide and Amazon CloudWatch Logs logging * driver in the Docker documentation. *
** Specifies the Fluentd logging driver. For more information including usage and options, see Fluentd logging driver in the * Docker documentation. *
** Specifies the Graylog Extended Format (GELF) logging driver. For more information including usage and * options, see Graylog Extended Format * logging driver in the Docker documentation. *
** Specifies the journald logging driver. For more information including usage and options, see Journald logging driver in the * Docker documentation. *
** Specifies the JSON file logging driver. For more information including usage and options, see JSON File logging driver in the * Docker documentation. *
** Specifies the Splunk logging driver. For more information including usage and options, see Splunk logging driver in the * Docker documentation. *
** Specifies the syslog logging driver. For more information including usage and options, see Syslog logging driver in the * Docker documentation. *
** If you have a custom driver that's not listed earlier that you want to work with the Amazon ECS container * agent, you can fork the Amazon ECS container agent project that's available on GitHub and customize it to work with that * driver. We encourage you to submit pull requests for changes that you want to have included. However, * Amazon Web Services doesn't currently support running modified copies of this software. *
*
* This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To
* check the Docker Remote API version on your container instance, log in to your container instance and run
* the following command: sudo docker version | grep "Server API version"
* @see LogDriver
*/
public void setLogDriver(String logDriver) {
this.logDriver = logDriver;
}
/**
*
* The log driver to use for the container. The valid values that are listed for this parameter are log drivers that * the Amazon ECS container agent can communicate with by default. *
*
* The supported log drivers are awslogs
, fluentd
, gelf
,
* json-file
, journald
, logentries
, syslog
, and
* splunk
.
*
* Jobs that are running on Fargate resources are restricted to the awslogs
and splunk
log
* drivers.
*
* Specifies the Amazon CloudWatch Logs logging driver. For more information, see Using the awslogs log driver in * the Batch User Guide and Amazon * CloudWatch Logs logging driver in the Docker documentation. *
** Specifies the Fluentd logging driver. For more information including usage and options, see Fluentd logging driver in the Docker * documentation. *
** Specifies the Graylog Extended Format (GELF) logging driver. For more information including usage and options, * see Graylog Extended Format logging driver * in the Docker documentation. *
** Specifies the journald logging driver. For more information including usage and options, see Journald logging driver in the Docker * documentation. *
** Specifies the JSON file logging driver. For more information including usage and options, see JSON File logging driver in the Docker * documentation. *
** Specifies the Splunk logging driver. For more information including usage and options, see Splunk logging driver in the Docker * documentation. *
** Specifies the syslog logging driver. For more information including usage and options, see Syslog logging driver in the Docker * documentation. *
** If you have a custom driver that's not listed earlier that you want to work with the Amazon ECS container agent, * you can fork the Amazon ECS container agent project that's available on GitHub and customize it to work with that driver. * We encourage you to submit pull requests for changes that you want to have included. However, Amazon Web Services * doesn't currently support running modified copies of this software. *
*
* This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the
* Docker Remote API version on your container instance, log in to your container instance and run the following
* command: sudo docker version | grep "Server API version"
*
* The supported log drivers are awslogs
, fluentd
, gelf
,
* json-file
, journald
, logentries
, syslog
, and
* splunk
.
*
* Jobs that are running on Fargate resources are restricted to the awslogs
and
* splunk
log drivers.
*
* Specifies the Amazon CloudWatch Logs logging driver. For more information, see Using the awslogs log * driver in the Batch User Guide and Amazon CloudWatch Logs logging * driver in the Docker documentation. *
** Specifies the Fluentd logging driver. For more information including usage and options, see Fluentd logging driver in the * Docker documentation. *
** Specifies the Graylog Extended Format (GELF) logging driver. For more information including usage and * options, see Graylog Extended Format * logging driver in the Docker documentation. *
** Specifies the journald logging driver. For more information including usage and options, see Journald logging driver in the * Docker documentation. *
** Specifies the JSON file logging driver. For more information including usage and options, see JSON File logging driver in the * Docker documentation. *
** Specifies the Splunk logging driver. For more information including usage and options, see Splunk logging driver in the * Docker documentation. *
** Specifies the syslog logging driver. For more information including usage and options, see Syslog logging driver in the * Docker documentation. *
** If you have a custom driver that's not listed earlier that you want to work with the Amazon ECS container * agent, you can fork the Amazon ECS container agent project that's available on GitHub and customize it to work with that * driver. We encourage you to submit pull requests for changes that you want to have included. However, * Amazon Web Services doesn't currently support running modified copies of this software. *
*
* This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To
* check the Docker Remote API version on your container instance, log in to your container instance and run
* the following command: sudo docker version | grep "Server API version"
* @see LogDriver
*/
public String getLogDriver() {
return this.logDriver;
}
/**
*
* The log driver to use for the container. The valid values that are listed for this parameter are log drivers that * the Amazon ECS container agent can communicate with by default. *
*
* The supported log drivers are awslogs
, fluentd
, gelf
,
* json-file
, journald
, logentries
, syslog
, and
* splunk
.
*
* Jobs that are running on Fargate resources are restricted to the awslogs
and splunk
log
* drivers.
*
* Specifies the Amazon CloudWatch Logs logging driver. For more information, see Using the awslogs log driver in * the Batch User Guide and Amazon * CloudWatch Logs logging driver in the Docker documentation. *
** Specifies the Fluentd logging driver. For more information including usage and options, see Fluentd logging driver in the Docker * documentation. *
** Specifies the Graylog Extended Format (GELF) logging driver. For more information including usage and options, * see Graylog Extended Format logging driver * in the Docker documentation. *
** Specifies the journald logging driver. For more information including usage and options, see Journald logging driver in the Docker * documentation. *
** Specifies the JSON file logging driver. For more information including usage and options, see JSON File logging driver in the Docker * documentation. *
** Specifies the Splunk logging driver. For more information including usage and options, see Splunk logging driver in the Docker * documentation. *
** Specifies the syslog logging driver. For more information including usage and options, see Syslog logging driver in the Docker * documentation. *
** If you have a custom driver that's not listed earlier that you want to work with the Amazon ECS container agent, * you can fork the Amazon ECS container agent project that's available on GitHub and customize it to work with that driver. * We encourage you to submit pull requests for changes that you want to have included. However, Amazon Web Services * doesn't currently support running modified copies of this software. *
*
* This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the
* Docker Remote API version on your container instance, log in to your container instance and run the following
* command: sudo docker version | grep "Server API version"
*
* The supported log drivers are awslogs
, fluentd
, gelf
,
* json-file
, journald
, logentries
, syslog
, and
* splunk
.
*
* Jobs that are running on Fargate resources are restricted to the awslogs
and
* splunk
log drivers.
*
* Specifies the Amazon CloudWatch Logs logging driver. For more information, see Using the awslogs log * driver in the Batch User Guide and Amazon CloudWatch Logs logging * driver in the Docker documentation. *
** Specifies the Fluentd logging driver. For more information including usage and options, see Fluentd logging driver in the * Docker documentation. *
** Specifies the Graylog Extended Format (GELF) logging driver. For more information including usage and * options, see Graylog Extended Format * logging driver in the Docker documentation. *
** Specifies the journald logging driver. For more information including usage and options, see Journald logging driver in the * Docker documentation. *
** Specifies the JSON file logging driver. For more information including usage and options, see JSON File logging driver in the * Docker documentation. *
** Specifies the Splunk logging driver. For more information including usage and options, see Splunk logging driver in the * Docker documentation. *
** Specifies the syslog logging driver. For more information including usage and options, see Syslog logging driver in the * Docker documentation. *
** If you have a custom driver that's not listed earlier that you want to work with the Amazon ECS container * agent, you can fork the Amazon ECS container agent project that's available on GitHub and customize it to work with that * driver. We encourage you to submit pull requests for changes that you want to have included. However, * Amazon Web Services doesn't currently support running modified copies of this software. *
*
* This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To
* check the Docker Remote API version on your container instance, log in to your container instance and run
* the following command: sudo docker version | grep "Server API version"
* @return Returns a reference to this object so that method calls can be chained together.
* @see LogDriver
*/
public LogConfiguration withLogDriver(String logDriver) {
setLogDriver(logDriver);
return this;
}
/**
*
* The log driver to use for the container. The valid values that are listed for this parameter are log drivers that * the Amazon ECS container agent can communicate with by default. *
*
* The supported log drivers are awslogs
, fluentd
, gelf
,
* json-file
, journald
, logentries
, syslog
, and
* splunk
.
*
* Jobs that are running on Fargate resources are restricted to the awslogs
and splunk
log
* drivers.
*
* Specifies the Amazon CloudWatch Logs logging driver. For more information, see Using the awslogs log driver in * the Batch User Guide and Amazon * CloudWatch Logs logging driver in the Docker documentation. *
** Specifies the Fluentd logging driver. For more information including usage and options, see Fluentd logging driver in the Docker * documentation. *
** Specifies the Graylog Extended Format (GELF) logging driver. For more information including usage and options, * see Graylog Extended Format logging driver * in the Docker documentation. *
** Specifies the journald logging driver. For more information including usage and options, see Journald logging driver in the Docker * documentation. *
** Specifies the JSON file logging driver. For more information including usage and options, see JSON File logging driver in the Docker * documentation. *
** Specifies the Splunk logging driver. For more information including usage and options, see Splunk logging driver in the Docker * documentation. *
** Specifies the syslog logging driver. For more information including usage and options, see Syslog logging driver in the Docker * documentation. *
** If you have a custom driver that's not listed earlier that you want to work with the Amazon ECS container agent, * you can fork the Amazon ECS container agent project that's available on GitHub and customize it to work with that driver. * We encourage you to submit pull requests for changes that you want to have included. However, Amazon Web Services * doesn't currently support running modified copies of this software. *
*
* This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the
* Docker Remote API version on your container instance, log in to your container instance and run the following
* command: sudo docker version | grep "Server API version"
*
* The supported log drivers are awslogs
, fluentd
, gelf
,
* json-file
, journald
, logentries
, syslog
, and
* splunk
.
*
* Jobs that are running on Fargate resources are restricted to the awslogs
and
* splunk
log drivers.
*
* Specifies the Amazon CloudWatch Logs logging driver. For more information, see Using the awslogs log * driver in the Batch User Guide and Amazon CloudWatch Logs logging * driver in the Docker documentation. *
** Specifies the Fluentd logging driver. For more information including usage and options, see Fluentd logging driver in the * Docker documentation. *
** Specifies the Graylog Extended Format (GELF) logging driver. For more information including usage and * options, see Graylog Extended Format * logging driver in the Docker documentation. *
** Specifies the journald logging driver. For more information including usage and options, see Journald logging driver in the * Docker documentation. *
** Specifies the JSON file logging driver. For more information including usage and options, see JSON File logging driver in the * Docker documentation. *
** Specifies the Splunk logging driver. For more information including usage and options, see Splunk logging driver in the * Docker documentation. *
** Specifies the syslog logging driver. For more information including usage and options, see Syslog logging driver in the * Docker documentation. *
** If you have a custom driver that's not listed earlier that you want to work with the Amazon ECS container * agent, you can fork the Amazon ECS container agent project that's available on GitHub and customize it to work with that * driver. We encourage you to submit pull requests for changes that you want to have included. However, * Amazon Web Services doesn't currently support running modified copies of this software. *
*
* This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To
* check the Docker Remote API version on your container instance, log in to your container instance and run
* the following command: sudo docker version | grep "Server API version"
* @return Returns a reference to this object so that method calls can be chained together.
* @see LogDriver
*/
public LogConfiguration withLogDriver(LogDriver logDriver) {
this.logDriver = logDriver.toString();
return this;
}
/**
*
* The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote
* API or greater on your container instance. To check the Docker Remote API version on your container instance, log
* in to your container instance and run the following command:
* sudo docker version | grep "Server API version"
*
sudo docker version | grep "Server API version"
*/
public java.util.Map
* The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote
* API or greater on your container instance. To check the Docker Remote API version on your container instance, log
* in to your container instance and run the following command:
* sudo docker version | grep "Server API version"
*
sudo docker version | grep "Server API version"
*/
public void setOptions(java.util.Map
* The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote
* API or greater on your container instance. To check the Docker Remote API version on your container instance, log
* in to your container instance and run the following command:
* sudo docker version | grep "Server API version"
*
sudo docker version | grep "Server API version"
* @return Returns a reference to this object so that method calls can be chained together.
*/
public LogConfiguration withOptions(java.util.Map* The secrets to pass to the log configuration. For more information, see Specifying sensitive * data in the Batch User Guide. *
* * @return The secrets to pass to the log configuration. For more information, see Specifying * sensitive data in the Batch User Guide. */ public java.util.List* The secrets to pass to the log configuration. For more information, see Specifying sensitive * data in the Batch User Guide. *
* * @param secretOptions * The secrets to pass to the log configuration. For more information, see Specifying * sensitive data in the Batch User Guide. */ public void setSecretOptions(java.util.Collection* The secrets to pass to the log configuration. For more information, see Specifying sensitive * data in the Batch User Guide. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setSecretOptions(java.util.Collection)} or {@link #withSecretOptions(java.util.Collection)} if you want * to override the existing values. *
* * @param secretOptions * The secrets to pass to the log configuration. For more information, see Specifying * sensitive data in the Batch User Guide. * @return Returns a reference to this object so that method calls can be chained together. */ public LogConfiguration withSecretOptions(Secret... secretOptions) { if (this.secretOptions == null) { setSecretOptions(new java.util.ArrayList* The secrets to pass to the log configuration. For more information, see Specifying sensitive * data in the Batch User Guide. *
* * @param secretOptions * The secrets to pass to the log configuration. For more information, see Specifying * sensitive data in the Batch User Guide. * @return Returns a reference to this object so that method calls can be chained together. */ public LogConfiguration withSecretOptions(java.util.Collection