/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace SSM { namespace Model { /** *

Configuration options for sending command output to Amazon CloudWatch * Logs.

See Also:

AWS * API Reference

*/ class CloudWatchOutputConfig { public: AWS_SSM_API CloudWatchOutputConfig(); AWS_SSM_API CloudWatchOutputConfig(Aws::Utils::Json::JsonView jsonValue); AWS_SSM_API CloudWatchOutputConfig& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_SSM_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The name of the CloudWatch Logs log group where you want to send command * output. If you don't specify a group name, Amazon Web Services Systems Manager * automatically creates a log group for you. The log group uses the following * naming format:

aws/ssm/SystemsManagerDocumentName *

*/ inline const Aws::String& GetCloudWatchLogGroupName() const{ return m_cloudWatchLogGroupName; } /** *

The name of the CloudWatch Logs log group where you want to send command * output. If you don't specify a group name, Amazon Web Services Systems Manager * automatically creates a log group for you. The log group uses the following * naming format:

aws/ssm/SystemsManagerDocumentName *

*/ inline bool CloudWatchLogGroupNameHasBeenSet() const { return m_cloudWatchLogGroupNameHasBeenSet; } /** *

The name of the CloudWatch Logs log group where you want to send command * output. If you don't specify a group name, Amazon Web Services Systems Manager * automatically creates a log group for you. The log group uses the following * naming format:

aws/ssm/SystemsManagerDocumentName *

*/ inline void SetCloudWatchLogGroupName(const Aws::String& value) { m_cloudWatchLogGroupNameHasBeenSet = true; m_cloudWatchLogGroupName = value; } /** *

The name of the CloudWatch Logs log group where you want to send command * output. If you don't specify a group name, Amazon Web Services Systems Manager * automatically creates a log group for you. The log group uses the following * naming format:

aws/ssm/SystemsManagerDocumentName *

*/ inline void SetCloudWatchLogGroupName(Aws::String&& value) { m_cloudWatchLogGroupNameHasBeenSet = true; m_cloudWatchLogGroupName = std::move(value); } /** *

The name of the CloudWatch Logs log group where you want to send command * output. If you don't specify a group name, Amazon Web Services Systems Manager * automatically creates a log group for you. The log group uses the following * naming format:

aws/ssm/SystemsManagerDocumentName *

*/ inline void SetCloudWatchLogGroupName(const char* value) { m_cloudWatchLogGroupNameHasBeenSet = true; m_cloudWatchLogGroupName.assign(value); } /** *

The name of the CloudWatch Logs log group where you want to send command * output. If you don't specify a group name, Amazon Web Services Systems Manager * automatically creates a log group for you. The log group uses the following * naming format:

aws/ssm/SystemsManagerDocumentName *

*/ inline CloudWatchOutputConfig& WithCloudWatchLogGroupName(const Aws::String& value) { SetCloudWatchLogGroupName(value); return *this;} /** *

The name of the CloudWatch Logs log group where you want to send command * output. If you don't specify a group name, Amazon Web Services Systems Manager * automatically creates a log group for you. The log group uses the following * naming format:

aws/ssm/SystemsManagerDocumentName *

*/ inline CloudWatchOutputConfig& WithCloudWatchLogGroupName(Aws::String&& value) { SetCloudWatchLogGroupName(std::move(value)); return *this;} /** *

The name of the CloudWatch Logs log group where you want to send command * output. If you don't specify a group name, Amazon Web Services Systems Manager * automatically creates a log group for you. The log group uses the following * naming format:

aws/ssm/SystemsManagerDocumentName *

*/ inline CloudWatchOutputConfig& WithCloudWatchLogGroupName(const char* value) { SetCloudWatchLogGroupName(value); return *this;} /** *

Enables Systems Manager to send command output to CloudWatch Logs.

*/ inline bool GetCloudWatchOutputEnabled() const{ return m_cloudWatchOutputEnabled; } /** *

Enables Systems Manager to send command output to CloudWatch Logs.

*/ inline bool CloudWatchOutputEnabledHasBeenSet() const { return m_cloudWatchOutputEnabledHasBeenSet; } /** *

Enables Systems Manager to send command output to CloudWatch Logs.

*/ inline void SetCloudWatchOutputEnabled(bool value) { m_cloudWatchOutputEnabledHasBeenSet = true; m_cloudWatchOutputEnabled = value; } /** *

Enables Systems Manager to send command output to CloudWatch Logs.

*/ inline CloudWatchOutputConfig& WithCloudWatchOutputEnabled(bool value) { SetCloudWatchOutputEnabled(value); return *this;} private: Aws::String m_cloudWatchLogGroupName; bool m_cloudWatchLogGroupNameHasBeenSet = false; bool m_cloudWatchOutputEnabled; bool m_cloudWatchOutputEnabledHasBeenSet = false; }; } // namespace Model } // namespace SSM } // namespace Aws