/*
* Copyright 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.
*/
/*
* Do not modify this file. This file is generated from the batch-2016-08-10.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.Batch.Model
{
///
/// Log configuration options to send to a custom log driver for the container.
///
public partial class LogConfiguration
{
private LogDriver _logDriver;
private Dictionary _options = new Dictionary();
private List _secretOptions = new List();
///
/// Gets and sets the property 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.
///
/// - awslogs
-
///
/// 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.
///
///
- fluentd
-
///
/// Specifies the Fluentd logging driver. For more information including usage and options,
/// see Fluentd logging
/// driver in the Docker documentation.
///
///
- gelf
-
///
/// 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.
///
///
- journald
-
///
/// Specifies the journald logging driver. For more information including usage and options,
/// see Journald
/// logging driver in the Docker documentation.
///
///
- json-file
-
///
/// Specifies the JSON file logging driver. For more information including usage and options,
/// see JSON File
/// logging driver in the Docker documentation.
///
///
- splunk
-
///
/// Specifies the Splunk logging driver. For more information including usage and options,
/// see Splunk logging
/// driver in the Docker documentation.
///
///
- syslog
-
///
/// 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"
///
///
[AWSProperty(Required=true)]
public LogDriver LogDriver
{
get { return this._logDriver; }
set { this._logDriver = value; }
}
// Check to see if LogDriver property is set
internal bool IsSetLogDriver()
{
return this._logDriver != null;
}
///
/// Gets and sets the property 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 | grep "Server API version"
///
///
///
public Dictionary Options
{
get { return this._options; }
set { this._options = value; }
}
// Check to see if Options property is set
internal bool IsSetOptions()
{
return this._options != null && this._options.Count > 0;
}
///
/// Gets and sets the property SecretOptions.
///
/// The secrets to pass to the log configuration. For more information, see Specifying
/// sensitive data in the Batch User Guide.
///
///
public List SecretOptions
{
get { return this._secretOptions; }
set { this._secretOptions = value; }
}
// Check to see if SecretOptions property is set
internal bool IsSetSecretOptions()
{
return this._secretOptions != null && this._secretOptions.Count > 0;
}
}
}