@Generated(value="com.amazonaws:aws-java-sdk-code-generator") public class LogConfiguration extends Object implements Serializable, Cloneable, StructuredPojo
The log configuration for the container. This parameter maps to LogConfig
in the Create a container section of the Docker Remote API and the --log-driver
option to docker run
.
By default, containers use the same logging driver that the Docker daemon uses. However, the container might use a different logging driver than the Docker daemon by specifying a log driver configuration in the container definition. For more information about the options for different supported log drivers, see Configure logging drivers in the Docker documentation.
Understand the following when specifying a log configuration for your containers.
Amazon ECS currently supports a subset of the logging drivers available to the Docker daemon. Additional log drivers may be available in future releases of the Amazon ECS container agent.
For tasks on Fargate, the supported log drivers are awslogs
, splunk
, and
awsfirelens
.
For tasks hosted on Amazon EC2 instances, the supported log drivers are awslogs
, fluentd
,
gelf
, json-file
, journald
, logentries
,syslog
,
splunk
, and awsfirelens
.
This parameter requires version 1.18 of the Docker Remote API or greater on your container instance.
For tasks that are hosted on Amazon EC2 instances, the Amazon ECS container agent must register the available logging
drivers with the ECS_AVAILABLE_LOGGING_DRIVERS
environment variable before containers placed on that
instance can use these log configuration options. For more information, see Amazon ECS container agent
configuration in the Amazon Elastic Container Service Developer Guide.
For tasks that are on Fargate, because you don't have access to the underlying infrastructure your tasks are hosted on, any additional software needed must be installed outside of the task. For example, the Fluentd output aggregators or a remote host running Logstash to send Gelf logs to.
Constructor and Description |
---|
LogConfiguration() |
Modifier and Type | Method and Description |
---|---|
LogConfiguration |
addOptionsEntry(String key,
String value)
Add a single Options entry
|
LogConfiguration |
clearOptionsEntries()
Removes all the entries added into Options.
|
LogConfiguration |
clone() |
boolean |
equals(Object obj) |
String |
getLogDriver()
The log driver to use for the container.
|
Map<String,String> |
getOptions()
The configuration options to send to the log driver.
|
List<Secret> |
getSecretOptions()
The secrets to pass to the log configuration.
|
int |
hashCode() |
void |
marshall(ProtocolMarshaller protocolMarshaller)
Marshalls this structured data using the given
ProtocolMarshaller . |
void |
setLogDriver(LogDriver logDriver)
The log driver to use for the container.
|
void |
setLogDriver(String logDriver)
The log driver to use for the container.
|
void |
setOptions(Map<String,String> options)
The configuration options to send to the log driver.
|
void |
setSecretOptions(Collection<Secret> secretOptions)
The secrets to pass to the log configuration.
|
String |
toString()
Returns a string representation of this object.
|
LogConfiguration |
withLogDriver(LogDriver logDriver)
The log driver to use for the container.
|
LogConfiguration |
withLogDriver(String logDriver)
The log driver to use for the container.
|
LogConfiguration |
withOptions(Map<String,String> options)
The configuration options to send to the log driver.
|
LogConfiguration |
withSecretOptions(Collection<Secret> secretOptions)
The secrets to pass to the log configuration.
|
LogConfiguration |
withSecretOptions(Secret... secretOptions)
The secrets to pass to the log configuration.
|
public void setLogDriver(String logDriver)
The log driver to use for the container.
For tasks on Fargate, the supported log drivers are awslogs
, splunk
, and
awsfirelens
.
For tasks hosted on Amazon EC2 instances, the supported log drivers are awslogs
,
fluentd
, gelf
, json-file
, journald
, logentries
,
syslog
, splunk
, and awsfirelens
.
For more information about using the awslogs
log driver, see Using the awslogs log
driver in the Amazon Elastic Container Service Developer Guide.
For more information about using the awsfirelens
log driver, see Custom log routing in
the Amazon Elastic Container Service Developer Guide.
If you have a custom driver that isn't listed, 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 would like to have included. However, we don't currently provide support for running modified copies of this software.
logDriver
- The log driver to use for the container.
For tasks on Fargate, the supported log drivers are awslogs
, splunk
, and
awsfirelens
.
For tasks hosted on Amazon EC2 instances, the supported log drivers are awslogs
,
fluentd
, gelf
, json-file
, journald
,
logentries
,syslog
, splunk
, and awsfirelens
.
For more information about using the awslogs
log driver, see Using the awslogs
log driver in the Amazon Elastic Container Service Developer Guide.
For more information about using the awsfirelens
log driver, see Custom log
routing in the Amazon Elastic Container Service Developer Guide.
If you have a custom driver that isn't listed, 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 would like to have included. However, we don't currently provide support for running modified copies of this software.
LogDriver
public String getLogDriver()
The log driver to use for the container.
For tasks on Fargate, the supported log drivers are awslogs
, splunk
, and
awsfirelens
.
For tasks hosted on Amazon EC2 instances, the supported log drivers are awslogs
,
fluentd
, gelf
, json-file
, journald
, logentries
,
syslog
, splunk
, and awsfirelens
.
For more information about using the awslogs
log driver, see Using the awslogs log
driver in the Amazon Elastic Container Service Developer Guide.
For more information about using the awsfirelens
log driver, see Custom log routing in
the Amazon Elastic Container Service Developer Guide.
If you have a custom driver that isn't listed, 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 would like to have included. However, we don't currently provide support for running modified copies of this software.
For tasks on Fargate, the supported log drivers are awslogs
, splunk
, and
awsfirelens
.
For tasks hosted on Amazon EC2 instances, the supported log drivers are awslogs
,
fluentd
, gelf
, json-file
, journald
,
logentries
,syslog
, splunk
, and awsfirelens
.
For more information about using the awslogs
log driver, see Using the awslogs
log driver in the Amazon Elastic Container Service Developer Guide.
For more information about using the awsfirelens
log driver, see Custom log
routing in the Amazon Elastic Container Service Developer Guide.
If you have a custom driver that isn't listed, 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 would like to have included. However, we don't currently provide support for running modified copies of this software.
LogDriver
public LogConfiguration withLogDriver(String logDriver)
The log driver to use for the container.
For tasks on Fargate, the supported log drivers are awslogs
, splunk
, and
awsfirelens
.
For tasks hosted on Amazon EC2 instances, the supported log drivers are awslogs
,
fluentd
, gelf
, json-file
, journald
, logentries
,
syslog
, splunk
, and awsfirelens
.
For more information about using the awslogs
log driver, see Using the awslogs log
driver in the Amazon Elastic Container Service Developer Guide.
For more information about using the awsfirelens
log driver, see Custom log routing in
the Amazon Elastic Container Service Developer Guide.
If you have a custom driver that isn't listed, 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 would like to have included. However, we don't currently provide support for running modified copies of this software.
logDriver
- The log driver to use for the container.
For tasks on Fargate, the supported log drivers are awslogs
, splunk
, and
awsfirelens
.
For tasks hosted on Amazon EC2 instances, the supported log drivers are awslogs
,
fluentd
, gelf
, json-file
, journald
,
logentries
,syslog
, splunk
, and awsfirelens
.
For more information about using the awslogs
log driver, see Using the awslogs
log driver in the Amazon Elastic Container Service Developer Guide.
For more information about using the awsfirelens
log driver, see Custom log
routing in the Amazon Elastic Container Service Developer Guide.
If you have a custom driver that isn't listed, 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 would like to have included. However, we don't currently provide support for running modified copies of this software.
LogDriver
public void setLogDriver(LogDriver logDriver)
The log driver to use for the container.
For tasks on Fargate, the supported log drivers are awslogs
, splunk
, and
awsfirelens
.
For tasks hosted on Amazon EC2 instances, the supported log drivers are awslogs
,
fluentd
, gelf
, json-file
, journald
, logentries
,
syslog
, splunk
, and awsfirelens
.
For more information about using the awslogs
log driver, see Using the awslogs log
driver in the Amazon Elastic Container Service Developer Guide.
For more information about using the awsfirelens
log driver, see Custom log routing in
the Amazon Elastic Container Service Developer Guide.
If you have a custom driver that isn't listed, 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 would like to have included. However, we don't currently provide support for running modified copies of this software.
logDriver
- The log driver to use for the container.
For tasks on Fargate, the supported log drivers are awslogs
, splunk
, and
awsfirelens
.
For tasks hosted on Amazon EC2 instances, the supported log drivers are awslogs
,
fluentd
, gelf
, json-file
, journald
,
logentries
,syslog
, splunk
, and awsfirelens
.
For more information about using the awslogs
log driver, see Using the awslogs
log driver in the Amazon Elastic Container Service Developer Guide.
For more information about using the awsfirelens
log driver, see Custom log
routing in the Amazon Elastic Container Service Developer Guide.
If you have a custom driver that isn't listed, 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 would like to have included. However, we don't currently provide support for running modified copies of this software.
LogDriver
public LogConfiguration withLogDriver(LogDriver logDriver)
The log driver to use for the container.
For tasks on Fargate, the supported log drivers are awslogs
, splunk
, and
awsfirelens
.
For tasks hosted on Amazon EC2 instances, the supported log drivers are awslogs
,
fluentd
, gelf
, json-file
, journald
, logentries
,
syslog
, splunk
, and awsfirelens
.
For more information about using the awslogs
log driver, see Using the awslogs log
driver in the Amazon Elastic Container Service Developer Guide.
For more information about using the awsfirelens
log driver, see Custom log routing in
the Amazon Elastic Container Service Developer Guide.
If you have a custom driver that isn't listed, 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 would like to have included. However, we don't currently provide support for running modified copies of this software.
logDriver
- The log driver to use for the container.
For tasks on Fargate, the supported log drivers are awslogs
, splunk
, and
awsfirelens
.
For tasks hosted on Amazon EC2 instances, the supported log drivers are awslogs
,
fluentd
, gelf
, json-file
, journald
,
logentries
,syslog
, splunk
, and awsfirelens
.
For more information about using the awslogs
log driver, see Using the awslogs
log driver in the Amazon Elastic Container Service Developer Guide.
For more information about using the awsfirelens
log driver, see Custom log
routing in the Amazon Elastic Container Service Developer Guide.
If you have a custom driver that isn't listed, 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 would like to have included. However, we don't currently provide support for running modified copies of this software.
LogDriver
public Map<String,String> getOptions()
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 --format '{{.Server.APIVersion}}'
sudo docker version --format '{{.Server.APIVersion}}'
public void setOptions(Map<String,String> options)
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 --format '{{.Server.APIVersion}}'
options
- 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 --format '{{.Server.APIVersion}}'
public LogConfiguration withOptions(Map<String,String> options)
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 --format '{{.Server.APIVersion}}'
options
- 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 --format '{{.Server.APIVersion}}'
public LogConfiguration addOptionsEntry(String key, String value)
public LogConfiguration clearOptionsEntries()
public List<Secret> getSecretOptions()
The secrets to pass to the log configuration. For more information, see Specifying sensitive data in the Amazon Elastic Container Service Developer Guide.
public void setSecretOptions(Collection<Secret> secretOptions)
The secrets to pass to the log configuration. For more information, see Specifying sensitive data in the Amazon Elastic Container Service Developer Guide.
secretOptions
- The secrets to pass to the log configuration. For more information, see Specifying sensitive data in the Amazon Elastic Container Service Developer Guide.public LogConfiguration withSecretOptions(Secret... secretOptions)
The secrets to pass to the log configuration. For more information, see Specifying sensitive data in the Amazon Elastic Container Service Developer Guide.
NOTE: This method appends the values to the existing list (if any). Use
setSecretOptions(java.util.Collection)
or withSecretOptions(java.util.Collection)
if you want
to override the existing values.
secretOptions
- The secrets to pass to the log configuration. For more information, see Specifying sensitive data in the Amazon Elastic Container Service Developer Guide.public LogConfiguration withSecretOptions(Collection<Secret> secretOptions)
The secrets to pass to the log configuration. For more information, see Specifying sensitive data in the Amazon Elastic Container Service Developer Guide.
secretOptions
- The secrets to pass to the log configuration. For more information, see Specifying sensitive data in the Amazon Elastic Container Service Developer Guide.public String toString()
toString
in class Object
Object.toString()
public LogConfiguration clone()
public void marshall(ProtocolMarshaller protocolMarshaller)
StructuredPojo
ProtocolMarshaller
.marshall
in interface StructuredPojo
protocolMarshaller
- Implementation of ProtocolMarshaller
used to marshall this object's data.