Skip to content

Put Log Events

cloudwatchlogs_put_log_events R Documentation

Uploads a batch of log events to the specified log stream

Description

Uploads a batch of log events to the specified log stream.

The sequence token is now ignored in put_log_events actions. put_log_events actions are always accepted and never return InvalidSequenceTokenException or DataAlreadyAcceptedException even if the sequence token is not valid. You can use parallel put_log_events actions on the same log stream.

The batch of events must satisfy the following constraints:

  • The maximum batch size is 1,048,576 bytes. This size is calculated as the sum of all event messages in UTF-8, plus 26 bytes for each log event.

  • Events more than 2 hours in the future are rejected while processing remaining valid events.

  • Events older than 14 days or preceding the log group's retention period are rejected while processing remaining valid events.

  • The log events in the batch must be in chronological order by their timestamp. The timestamp is the time that the event occurred, expressed as the number of milliseconds after ⁠Jan 1, 1970 00:00:00 UTC⁠. (In Amazon Web Services Tools for PowerShell and the Amazon Web Services SDK for .NET, the timestamp is specified in .NET format: yyyy-mm-ddThh:mm:ss. For example, ⁠2017-09-15T13:45:30⁠.)

  • A batch of log events in a single request must be in a chronological order. Otherwise, the operation fails.

  • Each log event can be no larger than 1 MB.

  • The maximum number of log events in a batch is 10,000.

  • For valid events (within 14 days in the past to 2 hours in future), the time span in a single batch cannot exceed 24 hours. Otherwise, the operation fails.

The quota of five requests per second per log stream has been removed. Instead, put_log_events actions are throttled based on a per-second per-account quota. You can request an increase to the per-second throttling quota by using the Service Quotas service.

If a call to put_log_events returns "UnrecognizedClientException" the most likely cause is a non-valid Amazon Web Services access key ID or secret key.

Usage

cloudwatchlogs_put_log_events(logGroupName, logStreamName, logEvents,
  sequenceToken, entity)

Arguments

logGroupName

[required] The name of the log group.

logStreamName

[required] The name of the log stream.

logEvents

[required] The log events.

sequenceToken

The sequence token obtained from the response of the previous put_log_events call.

The sequenceToken parameter is now ignored in put_log_events actions. put_log_events actions are now accepted and never return InvalidSequenceTokenException or DataAlreadyAcceptedException even if the sequence token is not valid.

entity

The entity associated with the log events.

Value

A list with the following syntax:

list(
  nextSequenceToken = "string",
  rejectedLogEventsInfo = list(
    tooNewLogEventStartIndex = 123,
    tooOldLogEventEndIndex = 123,
    expiredLogEventEndIndex = 123
  ),
  rejectedEntityInfo = list(
    errorType = "InvalidEntity"|"InvalidTypeValue"|"InvalidKeyAttributes"|"InvalidAttributes"|"EntitySizeTooLarge"|"UnsupportedLogGroupType"|"MissingRequiredFields"
  )
)

Request syntax

svc$put_log_events(
  logGroupName = "string",
  logStreamName = "string",
  logEvents = list(
    list(
      timestamp = 123,
      message = "string"
    )
  ),
  sequenceToken = "string",
  entity = list(
    keyAttributes = list(
      "string"
    ),
    attributes = list(
      "string"
    )
  )
)