/* * Copyright 2010-2019 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. */ package com.amazonaws.services.logs.model; import java.io.Serializable; import com.amazonaws.AmazonWebServiceRequest; /** *
* Uploads a batch of log events to the specified log stream. *
*
* You must include the sequence token obtained from the response of the
* previous call. An upload in a newly created log stream does not require a
* sequence token. You can also get the sequence token using
* DescribeLogStreams. If you call PutLogEvents
twice within
* a narrow time period using the same value for sequenceToken
,
* both calls may be successful, or one may be rejected.
*
* The batch of events must satisfy the following constraints: *
** The maximum batch size is 1,048,576 bytes, and this size is calculated as the * sum of all event messages in UTF-8, plus 26 bytes for each log event. *
** None of the log events in the batch can be more than 2 hours in the future. *
** None of the log events in the batch can be older than 14 days or the * retention period of the log group. *
** The log events in the batch must be in chronological ordered by their time * stamp. The time stamp is the time the event occurred, expressed as the number * of milliseconds after Jan 1, 1970 00:00:00 UTC. (In AWS Tools for PowerShell * and the AWS SDK for .NET, the timestamp is specified in .NET format: * yyyy-mm-ddThh:mm:ss. For example, 2017-09-15T13:45:30.) *
** The maximum number of log events in a batch is 10,000. *
** A batch of log events in a single request cannot span more than 24 hours. * Otherwise, the operation fails. *
** If a call to PutLogEvents returns "UnrecognizedClientException" the most * likely cause is an invalid AWS access key ID or secret key. *
*/ public class PutLogEventsRequest extends AmazonWebServiceRequest implements Serializable { /** ** The name of the log group. *
*
* Constraints:
* Length: 1 - 512
* Pattern: [\.\-_/#A-Za-z0-9]+
*/
private String logGroupName;
/**
*
* The name of the log stream. *
*
* Constraints:
* Length: 1 - 512
* Pattern: [^:*]*
*/
private String logStreamName;
/**
*
* The log events. *
*/ private java.util.List
* The sequence token obtained from the response of the previous
* PutLogEvents
call. An upload in a newly created log stream
* does not require a sequence token. You can also get the sequence token
* using DescribeLogStreams. If you call PutLogEvents
* twice within a narrow time period using the same value for
* sequenceToken
, both calls may be successful, or one may be
* rejected.
*
* Constraints:
* Length: 1 -
*/
private String sequenceToken;
/**
* Default constructor for PutLogEventsRequest object. Callers should use
* the setter or fluent setter (with...) methods to initialize any
* additional object members.
*/
public PutLogEventsRequest() {
}
/**
* Constructs a new PutLogEventsRequest object. Callers should use the
* setter or fluent setter (with...) methods to initialize any additional
* object members.
*
* @param logGroupName
* The name of the log group. *
* @param logStreamName* The name of the log stream. *
* @param logEvents* The log events. *
*/ public PutLogEventsRequest(String logGroupName, String logStreamName, java.util.List* The name of the log group. *
*
* Constraints:
* Length: 1 - 512
* Pattern: [\.\-_/#A-Za-z0-9]+
*
* @return
* The name of the log group. *
*/ public String getLogGroupName() { return logGroupName; } /** ** The name of the log group. *
*
* Constraints:
* Length: 1 - 512
* Pattern: [\.\-_/#A-Za-z0-9]+
*
* @param logGroupName
* The name of the log group. *
*/ public void setLogGroupName(String logGroupName) { this.logGroupName = logGroupName; } /** ** The name of the log group. *
** Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Length: 1 - 512
* Pattern: [\.\-_/#A-Za-z0-9]+
*
* @param logGroupName
* The name of the log group. *
* @return A reference to this updated object so that method calls can be * chained together. */ public PutLogEventsRequest withLogGroupName(String logGroupName) { this.logGroupName = logGroupName; return this; } /** ** The name of the log stream. *
*
* Constraints:
* Length: 1 - 512
* Pattern: [^:*]*
*
* @return
* The name of the log stream. *
*/ public String getLogStreamName() { return logStreamName; } /** ** The name of the log stream. *
*
* Constraints:
* Length: 1 - 512
* Pattern: [^:*]*
*
* @param logStreamName
* The name of the log stream. *
*/ public void setLogStreamName(String logStreamName) { this.logStreamName = logStreamName; } /** ** The name of the log stream. *
** Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Length: 1 - 512
* Pattern: [^:*]*
*
* @param logStreamName
* The name of the log stream. *
* @return A reference to this updated object so that method calls can be * chained together. */ public PutLogEventsRequest withLogStreamName(String logStreamName) { this.logStreamName = logStreamName; return this; } /** ** The log events. *
* * @return* The log events. *
*/ public java.util.List* The log events. *
* * @param logEvents* The log events. *
*/ public void setLogEvents(java.util.Collection* The log events. *
** Returns a reference to this object so that method calls can be chained * together. * * @param logEvents
* The log events. *
* @return A reference to this updated object so that method calls can be * chained together. */ public PutLogEventsRequest withLogEvents(InputLogEvent... logEvents) { if (getLogEvents() == null) { this.logEvents = new java.util.ArrayList* The log events. *
** Returns a reference to this object so that method calls can be chained * together. * * @param logEvents
* The log events. *
* @return A reference to this updated object so that method calls can be * chained together. */ public PutLogEventsRequest withLogEvents(java.util.Collection
* The sequence token obtained from the response of the previous
* PutLogEvents
call. An upload in a newly created log stream
* does not require a sequence token. You can also get the sequence token
* using DescribeLogStreams. If you call PutLogEvents
* twice within a narrow time period using the same value for
* sequenceToken
, both calls may be successful, or one may be
* rejected.
*
* Constraints:
* Length: 1 -
*
* @return
* The sequence token obtained from the response of the previous
* PutLogEvents
call. An upload in a newly created log
* stream does not require a sequence token. You can also get the
* sequence token using DescribeLogStreams. If you call
* PutLogEvents
twice within a narrow time period using
* the same value for sequenceToken
, both calls may be
* successful, or one may be rejected.
*
* The sequence token obtained from the response of the previous
* PutLogEvents
call. An upload in a newly created log stream
* does not require a sequence token. You can also get the sequence token
* using DescribeLogStreams. If you call PutLogEvents
* twice within a narrow time period using the same value for
* sequenceToken
, both calls may be successful, or one may be
* rejected.
*
* Constraints:
* Length: 1 -
*
* @param sequenceToken
* The sequence token obtained from the response of the previous
* PutLogEvents
call. An upload in a newly created
* log stream does not require a sequence token. You can also get
* the sequence token using DescribeLogStreams. If you
* call PutLogEvents
twice within a narrow time
* period using the same value for sequenceToken
,
* both calls may be successful, or one may be rejected.
*
* The sequence token obtained from the response of the previous
* PutLogEvents
call. An upload in a newly created log stream
* does not require a sequence token. You can also get the sequence token
* using DescribeLogStreams. If you call PutLogEvents
* twice within a narrow time period using the same value for
* sequenceToken
, both calls may be successful, or one may be
* rejected.
*
* Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Length: 1 -
*
* @param sequenceToken
* The sequence token obtained from the response of the previous
* PutLogEvents
call. An upload in a newly created
* log stream does not require a sequence token. You can also get
* the sequence token using DescribeLogStreams. If you
* call PutLogEvents
twice within a narrow time
* period using the same value for sequenceToken
,
* both calls may be successful, or one may be rejected.
*