/** * 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 EMRContainers { namespace Model { /** *

A configuration for CloudWatch monitoring. You can configure your jobs to * send log information to CloudWatch Logs.

See Also:

AWS * API Reference

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

The name of the log group for log publishing.

*/ inline const Aws::String& GetLogGroupName() const{ return m_logGroupName; } /** *

The name of the log group for log publishing.

*/ inline bool LogGroupNameHasBeenSet() const { return m_logGroupNameHasBeenSet; } /** *

The name of the log group for log publishing.

*/ inline void SetLogGroupName(const Aws::String& value) { m_logGroupNameHasBeenSet = true; m_logGroupName = value; } /** *

The name of the log group for log publishing.

*/ inline void SetLogGroupName(Aws::String&& value) { m_logGroupNameHasBeenSet = true; m_logGroupName = std::move(value); } /** *

The name of the log group for log publishing.

*/ inline void SetLogGroupName(const char* value) { m_logGroupNameHasBeenSet = true; m_logGroupName.assign(value); } /** *

The name of the log group for log publishing.

*/ inline CloudWatchMonitoringConfiguration& WithLogGroupName(const Aws::String& value) { SetLogGroupName(value); return *this;} /** *

The name of the log group for log publishing.

*/ inline CloudWatchMonitoringConfiguration& WithLogGroupName(Aws::String&& value) { SetLogGroupName(std::move(value)); return *this;} /** *

The name of the log group for log publishing.

*/ inline CloudWatchMonitoringConfiguration& WithLogGroupName(const char* value) { SetLogGroupName(value); return *this;} /** *

The specified name prefix for log streams.

*/ inline const Aws::String& GetLogStreamNamePrefix() const{ return m_logStreamNamePrefix; } /** *

The specified name prefix for log streams.

*/ inline bool LogStreamNamePrefixHasBeenSet() const { return m_logStreamNamePrefixHasBeenSet; } /** *

The specified name prefix for log streams.

*/ inline void SetLogStreamNamePrefix(const Aws::String& value) { m_logStreamNamePrefixHasBeenSet = true; m_logStreamNamePrefix = value; } /** *

The specified name prefix for log streams.

*/ inline void SetLogStreamNamePrefix(Aws::String&& value) { m_logStreamNamePrefixHasBeenSet = true; m_logStreamNamePrefix = std::move(value); } /** *

The specified name prefix for log streams.

*/ inline void SetLogStreamNamePrefix(const char* value) { m_logStreamNamePrefixHasBeenSet = true; m_logStreamNamePrefix.assign(value); } /** *

The specified name prefix for log streams.

*/ inline CloudWatchMonitoringConfiguration& WithLogStreamNamePrefix(const Aws::String& value) { SetLogStreamNamePrefix(value); return *this;} /** *

The specified name prefix for log streams.

*/ inline CloudWatchMonitoringConfiguration& WithLogStreamNamePrefix(Aws::String&& value) { SetLogStreamNamePrefix(std::move(value)); return *this;} /** *

The specified name prefix for log streams.

*/ inline CloudWatchMonitoringConfiguration& WithLogStreamNamePrefix(const char* value) { SetLogStreamNamePrefix(value); return *this;} private: Aws::String m_logGroupName; bool m_logGroupNameHasBeenSet = false; Aws::String m_logStreamNamePrefix; bool m_logStreamNamePrefixHasBeenSet = false; }; } // namespace Model } // namespace EMRContainers } // namespace Aws