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

Represents a log stream, which is a sequence of log events from a single * emitter of logs.

See Also:

AWS API * Reference

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

The name of the log stream.

*/ inline const Aws::String& GetLogStreamName() const{ return m_logStreamName; } /** *

The name of the log stream.

*/ inline bool LogStreamNameHasBeenSet() const { return m_logStreamNameHasBeenSet; } /** *

The name of the log stream.

*/ inline void SetLogStreamName(const Aws::String& value) { m_logStreamNameHasBeenSet = true; m_logStreamName = value; } /** *

The name of the log stream.

*/ inline void SetLogStreamName(Aws::String&& value) { m_logStreamNameHasBeenSet = true; m_logStreamName = std::move(value); } /** *

The name of the log stream.

*/ inline void SetLogStreamName(const char* value) { m_logStreamNameHasBeenSet = true; m_logStreamName.assign(value); } /** *

The name of the log stream.

*/ inline LogStream& WithLogStreamName(const Aws::String& value) { SetLogStreamName(value); return *this;} /** *

The name of the log stream.

*/ inline LogStream& WithLogStreamName(Aws::String&& value) { SetLogStreamName(std::move(value)); return *this;} /** *

The name of the log stream.

*/ inline LogStream& WithLogStreamName(const char* value) { SetLogStreamName(value); return *this;} /** *

The creation time of the stream, expressed as the number of milliseconds * after Jan 1, 1970 00:00:00 UTC.

*/ inline long long GetCreationTime() const{ return m_creationTime; } /** *

The creation time of the stream, expressed as the number of milliseconds * after Jan 1, 1970 00:00:00 UTC.

*/ inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; } /** *

The creation time of the stream, expressed as the number of milliseconds * after Jan 1, 1970 00:00:00 UTC.

*/ inline void SetCreationTime(long long value) { m_creationTimeHasBeenSet = true; m_creationTime = value; } /** *

The creation time of the stream, expressed as the number of milliseconds * after Jan 1, 1970 00:00:00 UTC.

*/ inline LogStream& WithCreationTime(long long value) { SetCreationTime(value); return *this;} /** *

The time of the first event, expressed as the number of milliseconds after * Jan 1, 1970 00:00:00 UTC.

*/ inline long long GetFirstEventTimestamp() const{ return m_firstEventTimestamp; } /** *

The time of the first event, expressed as the number of milliseconds after * Jan 1, 1970 00:00:00 UTC.

*/ inline bool FirstEventTimestampHasBeenSet() const { return m_firstEventTimestampHasBeenSet; } /** *

The time of the first event, expressed as the number of milliseconds after * Jan 1, 1970 00:00:00 UTC.

*/ inline void SetFirstEventTimestamp(long long value) { m_firstEventTimestampHasBeenSet = true; m_firstEventTimestamp = value; } /** *

The time of the first event, expressed as the number of milliseconds after * Jan 1, 1970 00:00:00 UTC.

*/ inline LogStream& WithFirstEventTimestamp(long long value) { SetFirstEventTimestamp(value); return *this;} /** *

The time of the most recent log event in the log stream in CloudWatch Logs. * This number is expressed as the number of milliseconds after Jan 1, 1970 * 00:00:00 UTC. The lastEventTime value updates on an eventual * consistency basis. It typically updates in less than an hour from ingestion, but * in rare situations might take longer.

*/ inline long long GetLastEventTimestamp() const{ return m_lastEventTimestamp; } /** *

The time of the most recent log event in the log stream in CloudWatch Logs. * This number is expressed as the number of milliseconds after Jan 1, 1970 * 00:00:00 UTC. The lastEventTime value updates on an eventual * consistency basis. It typically updates in less than an hour from ingestion, but * in rare situations might take longer.

*/ inline bool LastEventTimestampHasBeenSet() const { return m_lastEventTimestampHasBeenSet; } /** *

The time of the most recent log event in the log stream in CloudWatch Logs. * This number is expressed as the number of milliseconds after Jan 1, 1970 * 00:00:00 UTC. The lastEventTime value updates on an eventual * consistency basis. It typically updates in less than an hour from ingestion, but * in rare situations might take longer.

*/ inline void SetLastEventTimestamp(long long value) { m_lastEventTimestampHasBeenSet = true; m_lastEventTimestamp = value; } /** *

The time of the most recent log event in the log stream in CloudWatch Logs. * This number is expressed as the number of milliseconds after Jan 1, 1970 * 00:00:00 UTC. The lastEventTime value updates on an eventual * consistency basis. It typically updates in less than an hour from ingestion, but * in rare situations might take longer.

*/ inline LogStream& WithLastEventTimestamp(long long value) { SetLastEventTimestamp(value); return *this;} /** *

The ingestion time, expressed as the number of milliseconds after Jan * 1, 1970 00:00:00 UTC The lastIngestionTime value updates on * an eventual consistency basis. It typically updates in less than an hour after * ingestion, but in rare situations might take longer.

*/ inline long long GetLastIngestionTime() const{ return m_lastIngestionTime; } /** *

The ingestion time, expressed as the number of milliseconds after Jan * 1, 1970 00:00:00 UTC The lastIngestionTime value updates on * an eventual consistency basis. It typically updates in less than an hour after * ingestion, but in rare situations might take longer.

*/ inline bool LastIngestionTimeHasBeenSet() const { return m_lastIngestionTimeHasBeenSet; } /** *

The ingestion time, expressed as the number of milliseconds after Jan * 1, 1970 00:00:00 UTC The lastIngestionTime value updates on * an eventual consistency basis. It typically updates in less than an hour after * ingestion, but in rare situations might take longer.

*/ inline void SetLastIngestionTime(long long value) { m_lastIngestionTimeHasBeenSet = true; m_lastIngestionTime = value; } /** *

The ingestion time, expressed as the number of milliseconds after Jan * 1, 1970 00:00:00 UTC The lastIngestionTime value updates on * an eventual consistency basis. It typically updates in less than an hour after * ingestion, but in rare situations might take longer.

*/ inline LogStream& WithLastIngestionTime(long long value) { SetLastIngestionTime(value); return *this;} /** *

The sequence token.

The sequence token is now ignored in * PutLogEvents actions. PutLogEvents actions are always * accepted regardless of receiving an invalid sequence token. You don't need to * obtain uploadSequenceToken to use a PutLogEvents * action.

*/ inline const Aws::String& GetUploadSequenceToken() const{ return m_uploadSequenceToken; } /** *

The sequence token.

The sequence token is now ignored in * PutLogEvents actions. PutLogEvents actions are always * accepted regardless of receiving an invalid sequence token. You don't need to * obtain uploadSequenceToken to use a PutLogEvents * action.

*/ inline bool UploadSequenceTokenHasBeenSet() const { return m_uploadSequenceTokenHasBeenSet; } /** *

The sequence token.

The sequence token is now ignored in * PutLogEvents actions. PutLogEvents actions are always * accepted regardless of receiving an invalid sequence token. You don't need to * obtain uploadSequenceToken to use a PutLogEvents * action.

*/ inline void SetUploadSequenceToken(const Aws::String& value) { m_uploadSequenceTokenHasBeenSet = true; m_uploadSequenceToken = value; } /** *

The sequence token.

The sequence token is now ignored in * PutLogEvents actions. PutLogEvents actions are always * accepted regardless of receiving an invalid sequence token. You don't need to * obtain uploadSequenceToken to use a PutLogEvents * action.

*/ inline void SetUploadSequenceToken(Aws::String&& value) { m_uploadSequenceTokenHasBeenSet = true; m_uploadSequenceToken = std::move(value); } /** *

The sequence token.

The sequence token is now ignored in * PutLogEvents actions. PutLogEvents actions are always * accepted regardless of receiving an invalid sequence token. You don't need to * obtain uploadSequenceToken to use a PutLogEvents * action.

*/ inline void SetUploadSequenceToken(const char* value) { m_uploadSequenceTokenHasBeenSet = true; m_uploadSequenceToken.assign(value); } /** *

The sequence token.

The sequence token is now ignored in * PutLogEvents actions. PutLogEvents actions are always * accepted regardless of receiving an invalid sequence token. You don't need to * obtain uploadSequenceToken to use a PutLogEvents * action.

*/ inline LogStream& WithUploadSequenceToken(const Aws::String& value) { SetUploadSequenceToken(value); return *this;} /** *

The sequence token.

The sequence token is now ignored in * PutLogEvents actions. PutLogEvents actions are always * accepted regardless of receiving an invalid sequence token. You don't need to * obtain uploadSequenceToken to use a PutLogEvents * action.

*/ inline LogStream& WithUploadSequenceToken(Aws::String&& value) { SetUploadSequenceToken(std::move(value)); return *this;} /** *

The sequence token.

The sequence token is now ignored in * PutLogEvents actions. PutLogEvents actions are always * accepted regardless of receiving an invalid sequence token. You don't need to * obtain uploadSequenceToken to use a PutLogEvents * action.

*/ inline LogStream& WithUploadSequenceToken(const char* value) { SetUploadSequenceToken(value); return *this;} /** *

The Amazon Resource Name (ARN) of the log stream.

*/ inline const Aws::String& GetArn() const{ return m_arn; } /** *

The Amazon Resource Name (ARN) of the log stream.

*/ inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the log stream.

*/ inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; } /** *

The Amazon Resource Name (ARN) of the log stream.

*/ inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the log stream.

*/ inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); } /** *

The Amazon Resource Name (ARN) of the log stream.

*/ inline LogStream& WithArn(const Aws::String& value) { SetArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the log stream.

*/ inline LogStream& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the log stream.

*/ inline LogStream& WithArn(const char* value) { SetArn(value); return *this;} private: Aws::String m_logStreamName; bool m_logStreamNameHasBeenSet = false; long long m_creationTime; bool m_creationTimeHasBeenSet = false; long long m_firstEventTimestamp; bool m_firstEventTimestampHasBeenSet = false; long long m_lastEventTimestamp; bool m_lastEventTimestampHasBeenSet = false; long long m_lastIngestionTime; bool m_lastIngestionTimeHasBeenSet = false; Aws::String m_uploadSequenceToken; bool m_uploadSequenceTokenHasBeenSet = false; Aws::String m_arn; bool m_arnHasBeenSet = false; }; } // namespace Model } // namespace CloudWatchLogs } // namespace Aws