Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
   /*
    * Copyright 2010-2015 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;
  
  import java.net.*;
  import java.util.*;
  
  
  import com.amazonaws.*;
  
Client for accessing AWSLogs. All service calls made using this client are blocking, and will not return until the service call completes.

Amazon CloudWatch Logs API Reference

This is the Amazon CloudWatch Logs API Reference . Amazon CloudWatch Logs enables you to monitor, store, and access your system, application, and custom log files. This guide provides detailed information about Amazon CloudWatch Logs actions, data types, parameters, and errors. For detailed information about Amazon CloudWatch Logs features and their associated API calls, go to the Amazon CloudWatch Developer Guide .

Use the following links to get started using the Amazon CloudWatch Logs API Reference :

  • Actions : An alphabetical list of all Amazon CloudWatch Logs actions.
  • Data Types : An alphabetical list of all Amazon CloudWatch Logs data types.
  • Common Parameters : Parameters that all Query actions can use.
  • Common Errors : Client and server errors that all actions can return.
  • Regions and Endpoints : Itemized regions and endpoints for all AWS products.

In addition to using the Amazon CloudWatch Logs API, you can also use the following SDKs and third-party libraries to access Amazon CloudWatch Logs programmatically.

  • AWS SDK for Java Documentation
  • AWS SDK for .NET Documentation
  • AWS SDK for PHP Documentation
  • AWS SDK for Ruby Documentation

Developers in the AWS developer community also provide their own libraries, which you can find at the following AWS developer centers:

  • AWS Java Developer Center
  • AWS PHP Developer Center
  • AWS Python Developer Center
  • AWS Ruby Developer Center
  • AWS Windows and .NET Developer Center
 
 public class AWSLogsClient extends AmazonWebServiceClient implements AWSLogs {

    
Provider for AWS credentials.
 
 
     private static final Log log = LogFactory.getLog(AWSLogs.class);

    
List of exception unmarshallers for all AWSLogs exceptions.
 
     protected List<JsonErrorUnmarshallerjsonErrorUnmarshallers;

    
Constructs a new client to invoke service methods on AWSLogs. A credentials provider chain will be used that searches for credentials in this order:
  • Environment Variables - AWS_ACCESS_KEY_ID and AWS_SECRET_KEY
  • Java System Properties - aws.accessKeyId and aws.secretKey
  • Instance profile credentials delivered through the Amazon EC2 metadata service

All service calls made using this new client object are blocking, and will not return until the service call completes.

 
     public AWSLogsClient() {
         this(new DefaultAWSCredentialsProviderChain(), new ClientConfiguration());
     }

    
Constructs a new client to invoke service methods on AWSLogs. A credentials provider chain will be used that searches for credentials in this order:
  • Environment Variables - AWS_ACCESS_KEY_ID and AWS_SECRET_KEY
  • Java System Properties - aws.accessKeyId and aws.secretKey
  • Instance profile credentials delivered through the Amazon EC2 metadata service

All service calls made using this new client object are blocking, and will not return until the service call completes.

Parameters:
clientConfiguration The client configuration options controlling how this client connects to AWSLogs (ex: proxy settings, retry counts, etc.).
See also:
com.amazonaws.auth.DefaultAWSCredentialsProviderChain
 
     public AWSLogsClient(ClientConfiguration clientConfiguration) {
         this(new DefaultAWSCredentialsProviderChain(), clientConfiguration);
     }

    
Constructs a new client to invoke service methods on AWSLogs using the specified AWS account credentials.

All service calls made using this new client object are blocking, and will not return until the service call completes.

Parameters:
awsCredentials The AWS credentials (access key ID and secret key) to use when authenticating with AWS services.
 
     public AWSLogsClient(AWSCredentials awsCredentials) {
         this(awsCredentialsnew ClientConfiguration());
     }

    
Constructs a new client to invoke service methods on AWSLogs using the specified AWS account credentials and client configuration options.

All service calls made using this new client object are blocking, and will not return until the service call completes.

Parameters:
awsCredentials The AWS credentials (access key ID and secret key) to use when authenticating with AWS services.
clientConfiguration The client configuration options controlling how this client connects to AWSLogs (ex: proxy settings, retry counts, etc.).
 
     public AWSLogsClient(AWSCredentials awsCredentialsClientConfiguration clientConfiguration) {
         super(adjustClientConfiguration(clientConfiguration));
         
         this. = new StaticCredentialsProvider(awsCredentials);
         
         init();
     }

    
Constructs a new client to invoke service methods on AWSLogs using the specified AWS account credentials provider.

All service calls made using this new client object are blocking, and will not return until the service call completes.

Parameters:
awsCredentialsProvider The AWS credentials provider which will provide credentials to authenticate requests with AWS services.
 
     public AWSLogsClient(AWSCredentialsProvider awsCredentialsProvider) {
         this(awsCredentialsProvidernew ClientConfiguration());
     }

    
Constructs a new client to invoke service methods on AWSLogs using the specified AWS account credentials provider and client configuration options.

All service calls made using this new client object are blocking, and will not return until the service call completes.

Parameters:
awsCredentialsProvider The AWS credentials provider which will provide credentials to authenticate requests with AWS services.
clientConfiguration The client configuration options controlling how this client connects to AWSLogs (ex: proxy settings, retry counts, etc.).
 
     public AWSLogsClient(AWSCredentialsProvider awsCredentialsProviderClientConfiguration clientConfiguration) {
         this(awsCredentialsProviderclientConfigurationnull);
     }

    
Constructs a new client to invoke service methods on AWSLogs using the specified AWS account credentials provider, client configuration options and request metric collector.

All service calls made using this new client object are blocking, and will not return until the service call completes.

Parameters:
awsCredentialsProvider The AWS credentials provider which will provide credentials to authenticate requests with AWS services.
clientConfiguration The client configuration options controlling how this client connects to AWSLogs (ex: proxy settings, retry counts, etc.).
requestMetricCollector optional request metric collector
 
     public AWSLogsClient(AWSCredentialsProvider awsCredentialsProvider,
             ClientConfiguration clientConfiguration,
             RequestMetricCollector requestMetricCollector) {
         super(adjustClientConfiguration(clientConfiguration), requestMetricCollector);
         
         this. = awsCredentialsProvider;
         
         init();
     }
 
     private void init() {
         
         
         // calling this.setEndPoint(...) will also modify the signer accordingly
         this.setEndpoint("logs.us-east-1.amazonaws.com");
         
         HandlerChainFactory chainFactory = new HandlerChainFactory();
         .addAll(chainFactory.newRequestHandlerChain(
                 "/com/amazonaws/services/logs/request.handlers"));
         .addAll(chainFactory.newRequestHandler2Chain(
                 "/com/amazonaws/services/logs/request.handler2s"));
     }
 
         ClientConfiguration config = orig;
         
         return config;
     }

    

Sets the retention of the specified log group. A retention policy allows you to configure the number of days you want to retain log events in the specified log group.

Parameters:
putRetentionPolicyRequest Container for the necessary parameters to execute the PutRetentionPolicy service method on AWSLogs.
Throws:
com.amazonaws.services.logs.model.ServiceUnavailableException
com.amazonaws.services.logs.model.InvalidParameterException
com.amazonaws.services.logs.model.OperationAbortedException
com.amazonaws.services.logs.model.ResourceNotFoundException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AWSLogs indicating either a problem with the data in the request, or a server side issue.
 
     public void putRetentionPolicy(PutRetentionPolicyRequest putRetentionPolicyRequest) {
         ExecutionContext executionContext = createExecutionContext(putRetentionPolicyRequest);
         AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
         awsRequestMetrics.startEvent(.);
         Request<PutRetentionPolicyRequestrequest = null;
         
         try {
             awsRequestMetrics.startEvent(.);
             try {
                 request = new PutRetentionPolicyRequestMarshaller().marshall(super.beforeMarshalling(putRetentionPolicyRequest));
                 // Binds the request metrics to the current request.
                 request.setAWSRequestMetrics(awsRequestMetrics);
             } finally {
                 awsRequestMetrics.endEvent(.);
             }
 
             JsonResponseHandler<VoidresponseHandler = new JsonResponseHandler<Void>(null);
             invoke(requestresponseHandlerexecutionContext);
 
         } finally {
             
             endClientExecution(awsRequestMetricsrequestnull);
         }
     }
    
    

Returns all the subscription filters associated with the specified log group. The list returned in the response is ASCII-sorted by filter name.

By default, this operation returns up to 50 subscription filters. If there are more subscription filters to list, the response would contain a nextToken value in the response body. You can also limit the number of subscription filters returned in the response by specifying the limit parameter in the request.

Parameters:
describeSubscriptionFiltersRequest Container for the necessary parameters to execute the DescribeSubscriptionFilters service method on AWSLogs.
Returns:
The response from the DescribeSubscriptionFilters service method, as returned by AWSLogs.
Throws:
com.amazonaws.services.logs.model.ServiceUnavailableException
com.amazonaws.services.logs.model.InvalidParameterException
com.amazonaws.services.logs.model.ResourceNotFoundException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AWSLogs indicating either a problem with the data in the request, or a server side issue.
 
         ExecutionContext executionContext = createExecutionContext(describeSubscriptionFiltersRequest);
         AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
         awsRequestMetrics.startEvent(.);
         Request<DescribeSubscriptionFiltersRequestrequest = null;
         Response<DescribeSubscriptionFiltersResultresponse = null;
         
         try {
             awsRequestMetrics.startEvent(.);
             try {
                 request = new DescribeSubscriptionFiltersRequestMarshaller().marshall(super.beforeMarshalling(describeSubscriptionFiltersRequest));
                 // Binds the request metrics to the current request.
                 request.setAWSRequestMetrics(awsRequestMetrics);
             } finally {
                 awsRequestMetrics.endEvent(.);
             }
 
             Unmarshaller<DescribeSubscriptionFiltersResultJsonUnmarshallerContextunmarshaller =
                 new DescribeSubscriptionFiltersResultJsonUnmarshaller();
             JsonResponseHandler<DescribeSubscriptionFiltersResultresponseHandler =
                 new JsonResponseHandler<DescribeSubscriptionFiltersResult>(unmarshaller);
 
             response = invoke(requestresponseHandlerexecutionContext);
 
             return response.getAwsResponse();
         } finally {
             
             endClientExecution(awsRequestMetricsrequestresponse);
         }
     }

    

Deletes a subscription filter associated with the specified log group.

Parameters:
deleteSubscriptionFilterRequest Container for the necessary parameters to execute the DeleteSubscriptionFilter service method on AWSLogs.
Throws:
com.amazonaws.services.logs.model.ServiceUnavailableException
com.amazonaws.services.logs.model.InvalidParameterException
com.amazonaws.services.logs.model.OperationAbortedException
com.amazonaws.services.logs.model.ResourceNotFoundException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AWSLogs indicating either a problem with the data in the request, or a server side issue.
 
     public void deleteSubscriptionFilter(DeleteSubscriptionFilterRequest deleteSubscriptionFilterRequest) {
         ExecutionContext executionContext = createExecutionContext(deleteSubscriptionFilterRequest);
         AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
         awsRequestMetrics.startEvent(.);
         Request<DeleteSubscriptionFilterRequestrequest = null;
         
         try {
             awsRequestMetrics.startEvent(.);
             try {
                 request = new DeleteSubscriptionFilterRequestMarshaller().marshall(super.beforeMarshalling(deleteSubscriptionFilterRequest));
                 // Binds the request metrics to the current request.
                 request.setAWSRequestMetrics(awsRequestMetrics);
             } finally {
                 awsRequestMetrics.endEvent(.);
             }
 
             JsonResponseHandler<VoidresponseHandler = new JsonResponseHandler<Void>(null);
             invoke(requestresponseHandlerexecutionContext);
 
         } finally {
             
             endClientExecution(awsRequestMetricsrequestnull);
         }
     }
    
    

Returns all the metrics filters associated with the specified log group. The list returned in the response is ASCII-sorted by filter name.

By default, this operation returns up to 50 metric filters. If there are more metric filters to list, the response would contain a nextToken value in the response body. You can also limit the number of metric filters returned in the response by specifying the limit parameter in the request.

Parameters:
describeMetricFiltersRequest Container for the necessary parameters to execute the DescribeMetricFilters service method on AWSLogs.
Returns:
The response from the DescribeMetricFilters service method, as returned by AWSLogs.
Throws:
com.amazonaws.services.logs.model.ServiceUnavailableException
com.amazonaws.services.logs.model.InvalidParameterException
com.amazonaws.services.logs.model.ResourceNotFoundException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AWSLogs indicating either a problem with the data in the request, or a server side issue.
 
     public DescribeMetricFiltersResult describeMetricFilters(DescribeMetricFiltersRequest describeMetricFiltersRequest) {
         ExecutionContext executionContext = createExecutionContext(describeMetricFiltersRequest);
         AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
         awsRequestMetrics.startEvent(.);
         Request<DescribeMetricFiltersRequestrequest = null;
         Response<DescribeMetricFiltersResultresponse = null;
         
         try {
             awsRequestMetrics.startEvent(.);
             try {
                 request = new DescribeMetricFiltersRequestMarshaller().marshall(super.beforeMarshalling(describeMetricFiltersRequest));
                 // Binds the request metrics to the current request.
                 request.setAWSRequestMetrics(awsRequestMetrics);
             } finally {
                 awsRequestMetrics.endEvent(.);
             }
 
             Unmarshaller<DescribeMetricFiltersResultJsonUnmarshallerContextunmarshaller =
                 new DescribeMetricFiltersResultJsonUnmarshaller();
             JsonResponseHandler<DescribeMetricFiltersResultresponseHandler =
                 new JsonResponseHandler<DescribeMetricFiltersResult>(unmarshaller);
 
             response = invoke(requestresponseHandlerexecutionContext);
 
             return response.getAwsResponse();
         } finally {
             
             endClientExecution(awsRequestMetricsrequestresponse);
         }
     }

    

Returns all the log streams that are associated with the specified log group. The list returned in the response is ASCII-sorted by log stream name.

By default, this operation returns up to 50 log streams. If there are more log streams to list, the response would contain a nextToken value in the response body. You can also limit the number of log streams returned in the response by specifying the limit parameter in the request. This operation has a limit of five transactions per second, after which transactions are throttled.

Parameters:
describeLogStreamsRequest Container for the necessary parameters to execute the DescribeLogStreams service method on AWSLogs.
Returns:
The response from the DescribeLogStreams service method, as returned by AWSLogs.
Throws:
com.amazonaws.services.logs.model.ServiceUnavailableException
com.amazonaws.services.logs.model.InvalidParameterException
com.amazonaws.services.logs.model.ResourceNotFoundException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AWSLogs indicating either a problem with the data in the request, or a server side issue.
 
     public DescribeLogStreamsResult describeLogStreams(DescribeLogStreamsRequest describeLogStreamsRequest) {
         ExecutionContext executionContext = createExecutionContext(describeLogStreamsRequest);
         AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
         awsRequestMetrics.startEvent(.);
         Request<DescribeLogStreamsRequestrequest = null;
         Response<DescribeLogStreamsResultresponse = null;
         
         try {
             awsRequestMetrics.startEvent(.);
             try {
                 request = new DescribeLogStreamsRequestMarshaller().marshall(super.beforeMarshalling(describeLogStreamsRequest));
                 // Binds the request metrics to the current request.
                 request.setAWSRequestMetrics(awsRequestMetrics);
             } finally {
                 awsRequestMetrics.endEvent(.);
             }
 
             Unmarshaller<DescribeLogStreamsResultJsonUnmarshallerContextunmarshaller =
                 new DescribeLogStreamsResultJsonUnmarshaller();
             JsonResponseHandler<DescribeLogStreamsResultresponseHandler =
                 new JsonResponseHandler<DescribeLogStreamsResult>(unmarshaller);
 
             response = invoke(requestresponseHandlerexecutionContext);
 
             return response.getAwsResponse();
         } finally {
             
             endClientExecution(awsRequestMetricsrequestresponse);
         }
     }

    

Deletes the log group with the specified name and permanently deletes all the archived log events associated with it.

Parameters:
deleteLogGroupRequest Container for the necessary parameters to execute the DeleteLogGroup service method on AWSLogs.
Throws:
com.amazonaws.services.logs.model.ServiceUnavailableException
com.amazonaws.services.logs.model.InvalidParameterException
com.amazonaws.services.logs.model.OperationAbortedException
com.amazonaws.services.logs.model.ResourceNotFoundException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AWSLogs indicating either a problem with the data in the request, or a server side issue.
 
     public void deleteLogGroup(DeleteLogGroupRequest deleteLogGroupRequest) {
         ExecutionContext executionContext = createExecutionContext(deleteLogGroupRequest);
         AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
         awsRequestMetrics.startEvent(.);
         Request<DeleteLogGroupRequestrequest = null;
         
         try {
             awsRequestMetrics.startEvent(.);
             try {
                 request = new DeleteLogGroupRequestMarshaller().marshall(super.beforeMarshalling(deleteLogGroupRequest));
                 // Binds the request metrics to the current request.
                 request.setAWSRequestMetrics(awsRequestMetrics);
             } finally {
                 awsRequestMetrics.endEvent(.);
             }
 
             JsonResponseHandler<VoidresponseHandler = new JsonResponseHandler<Void>(null);
             invoke(requestresponseHandlerexecutionContext);
 
         } finally {
             
             endClientExecution(awsRequestMetricsrequestnull);
         }
     }
    
    

Creates a new log group with the specified name. The name of the log group must be unique within a region for an AWS account. You can create up to 500 log groups per account.

You must use the following guidelines when naming a log group:

  • Log group names can be between 1 and 512 characters long.
  • Allowed characters are a-z, A-Z, 0-9, '_' (underscore), '-' (hyphen), '/' (forward slash), and '.' (period).

Parameters:
createLogGroupRequest Container for the necessary parameters to execute the CreateLogGroup service method on AWSLogs.
Throws:
com.amazonaws.services.logs.model.ServiceUnavailableException
com.amazonaws.services.logs.model.InvalidParameterException
com.amazonaws.services.logs.model.OperationAbortedException
com.amazonaws.services.logs.model.ResourceAlreadyExistsException
com.amazonaws.services.logs.model.LimitExceededException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AWSLogs indicating either a problem with the data in the request, or a server side issue.
 
     public void createLogGroup(CreateLogGroupRequest createLogGroupRequest) {
         ExecutionContext executionContext = createExecutionContext(createLogGroupRequest);
         AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
         awsRequestMetrics.startEvent(.);
         Request<CreateLogGroupRequestrequest = null;
         
         try {
             awsRequestMetrics.startEvent(.);
             try {
                 request = new CreateLogGroupRequestMarshaller().marshall(super.beforeMarshalling(createLogGroupRequest));
                 // Binds the request metrics to the current request.
                 request.setAWSRequestMetrics(awsRequestMetrics);
             } finally {
                 awsRequestMetrics.endEvent(.);
             }
 
             JsonResponseHandler<VoidresponseHandler = new JsonResponseHandler<Void>(null);
             invoke(requestresponseHandlerexecutionContext);
 
         } finally {
             
             endClientExecution(awsRequestMetricsrequestnull);
         }
     }
    
    

Creates or updates a subscription filter and associates it with the specified log group. Subscription filters allow you to subscribe to a real-time stream of log events ingested through PutLogEvents requests and have them delivered to a specific destination. Currently the only supported destination is an Amazon Kinesis stream belonging to the same account as the subscription filter.

Currently there can only be one subscription filter associated with a log group.

Parameters:
putSubscriptionFilterRequest Container for the necessary parameters to execute the PutSubscriptionFilter service method on AWSLogs.
Throws:
com.amazonaws.services.logs.model.ServiceUnavailableException
com.amazonaws.services.logs.model.InvalidParameterException
com.amazonaws.services.logs.model.OperationAbortedException
com.amazonaws.services.logs.model.ResourceNotFoundException
com.amazonaws.services.logs.model.LimitExceededException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AWSLogs indicating either a problem with the data in the request, or a server side issue.
 
     public void putSubscriptionFilter(PutSubscriptionFilterRequest putSubscriptionFilterRequest) {
         ExecutionContext executionContext = createExecutionContext(putSubscriptionFilterRequest);
         AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
         awsRequestMetrics.startEvent(.);
         Request<PutSubscriptionFilterRequestrequest = null;
         
         try {
             awsRequestMetrics.startEvent(.);
             try {
                 request = new PutSubscriptionFilterRequestMarshaller().marshall(super.beforeMarshalling(putSubscriptionFilterRequest));
                 // Binds the request metrics to the current request.
                 request.setAWSRequestMetrics(awsRequestMetrics);
             } finally {
                 awsRequestMetrics.endEvent(.);
             }
 
             JsonResponseHandler<VoidresponseHandler = new JsonResponseHandler<Void>(null);
             invoke(requestresponseHandlerexecutionContext);
 
         } finally {
             
             endClientExecution(awsRequestMetricsrequestnull);
         }
     }
    
    

Tests the filter pattern of a metric filter against a sample of log event messages. You can use this operation to validate the correctness of a metric filter pattern.

Parameters:
testMetricFilterRequest Container for the necessary parameters to execute the TestMetricFilter service method on AWSLogs.
Returns:
The response from the TestMetricFilter service method, as returned by AWSLogs.
Throws:
com.amazonaws.services.logs.model.ServiceUnavailableException
com.amazonaws.services.logs.model.InvalidParameterException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AWSLogs indicating either a problem with the data in the request, or a server side issue.
 
     public TestMetricFilterResult testMetricFilter(TestMetricFilterRequest testMetricFilterRequest) {
         ExecutionContext executionContext = createExecutionContext(testMetricFilterRequest);
         AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
         awsRequestMetrics.startEvent(.);
         Request<TestMetricFilterRequestrequest = null;
         Response<TestMetricFilterResultresponse = null;
         
         try {
             awsRequestMetrics.startEvent(.);
             try {
                 request = new TestMetricFilterRequestMarshaller().marshall(super.beforeMarshalling(testMetricFilterRequest));
                 // Binds the request metrics to the current request.
                 request.setAWSRequestMetrics(awsRequestMetrics);
             } finally {
                 awsRequestMetrics.endEvent(.);
             }
 
             Unmarshaller<TestMetricFilterResultJsonUnmarshallerContextunmarshaller =
                 new TestMetricFilterResultJsonUnmarshaller();
             JsonResponseHandler<TestMetricFilterResultresponseHandler =
                 new JsonResponseHandler<TestMetricFilterResult>(unmarshaller);
 
             response = invoke(requestresponseHandlerexecutionContext);
 
             return response.getAwsResponse();
         } finally {
             
             endClientExecution(awsRequestMetricsrequestresponse);
         }
     }

    

Creates or updates a metric filter and associates it with the specified log group. Metric filters allow you to configure rules to extract metric data from log events ingested through PutLogEvents requests.

The maximum number of metric filters that can be associated with a log group is 100.

Parameters:
putMetricFilterRequest Container for the necessary parameters to execute the PutMetricFilter service method on AWSLogs.
Throws:
com.amazonaws.services.logs.model.ServiceUnavailableException
com.amazonaws.services.logs.model.InvalidParameterException
com.amazonaws.services.logs.model.OperationAbortedException
com.amazonaws.services.logs.model.ResourceNotFoundException
com.amazonaws.services.logs.model.LimitExceededException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AWSLogs indicating either a problem with the data in the request, or a server side issue.
 
     public void putMetricFilter(PutMetricFilterRequest putMetricFilterRequest) {
         ExecutionContext executionContext = createExecutionContext(putMetricFilterRequest);
         AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
         awsRequestMetrics.startEvent(.);
         Request<PutMetricFilterRequestrequest = null;
         
         try {
             awsRequestMetrics.startEvent(.);
             try {
                 request = new PutMetricFilterRequestMarshaller().marshall(super.beforeMarshalling(putMetricFilterRequest));
                 // Binds the request metrics to the current request.
                 request.setAWSRequestMetrics(awsRequestMetrics);
             } finally {
                 awsRequestMetrics.endEvent(.);
             }
 
             JsonResponseHandler<VoidresponseHandler = new JsonResponseHandler<Void>(null);
             invoke(requestresponseHandlerexecutionContext);
 
         } finally {
             
             endClientExecution(awsRequestMetricsrequestnull);
         }
     }
    
    

Deletes a metric filter associated with the specified log group.

Parameters:
deleteMetricFilterRequest Container for the necessary parameters to execute the DeleteMetricFilter service method on AWSLogs.
Throws:
com.amazonaws.services.logs.model.ServiceUnavailableException
com.amazonaws.services.logs.model.InvalidParameterException
com.amazonaws.services.logs.model.OperationAbortedException
com.amazonaws.services.logs.model.ResourceNotFoundException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AWSLogs indicating either a problem with the data in the request, or a server side issue.
 
     public void deleteMetricFilter(DeleteMetricFilterRequest deleteMetricFilterRequest) {
         ExecutionContext executionContext = createExecutionContext(deleteMetricFilterRequest);
         AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
         awsRequestMetrics.startEvent(.);
         Request<DeleteMetricFilterRequestrequest = null;
         
         try {
             awsRequestMetrics.startEvent(.);
             try {
                 request = new DeleteMetricFilterRequestMarshaller().marshall(super.beforeMarshalling(deleteMetricFilterRequest));
                 // Binds the request metrics to the current request.
                 request.setAWSRequestMetrics(awsRequestMetrics);
             } finally {
                 awsRequestMetrics.endEvent(.);
             }
 
             JsonResponseHandler<VoidresponseHandler = new JsonResponseHandler<Void>(null);
             invoke(requestresponseHandlerexecutionContext);
 
         } finally {
             
             endClientExecution(awsRequestMetricsrequestnull);
         }
     }
    
    

Retrieves log events, optionally filtered by a filter pattern from the specified log group. You can provide an optional time range to filter the results on the event timestamp . You can limit the streams searched to an explicit list of logStreamNames .

By default, this operation returns as much matching log events as can fit in a response size of 1MB, up to 10,000 log events, or all the events found within a time-bounded scan window. If the response includes a nextToken , then there is more data to search, and the search can be resumed with a new request providing the nextToken. The response will contain a list of searchedLogStreams that contains information about which streams were searched in the request and whether they have been searched completely or require further pagination. The limit parameter in the request. can be used to specify the maximum number of events to return in a page.

Parameters:
filterLogEventsRequest Container for the necessary parameters to execute the FilterLogEvents service method on AWSLogs.
Returns:
The response from the FilterLogEvents service method, as returned by AWSLogs.
Throws:
com.amazonaws.services.logs.model.ServiceUnavailableException
com.amazonaws.services.logs.model.InvalidParameterException
com.amazonaws.services.logs.model.ResourceNotFoundException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AWSLogs indicating either a problem with the data in the request, or a server side issue.
 
     public FilterLogEventsResult filterLogEvents(FilterLogEventsRequest filterLogEventsRequest) {
         ExecutionContext executionContext = createExecutionContext(filterLogEventsRequest);
         AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
         awsRequestMetrics.startEvent(.);
         Request<FilterLogEventsRequestrequest = null;
         Response<FilterLogEventsResultresponse = null;
         
         try {
             awsRequestMetrics.startEvent(.);
             try {
                 request = new FilterLogEventsRequestMarshaller().marshall(super.beforeMarshalling(filterLogEventsRequest));
                 // Binds the request metrics to the current request.
                 request.setAWSRequestMetrics(awsRequestMetrics);
             } finally {
                 awsRequestMetrics.endEvent(.);
             }
 
             Unmarshaller<FilterLogEventsResultJsonUnmarshallerContextunmarshaller =
                 new FilterLogEventsResultJsonUnmarshaller();
             JsonResponseHandler<FilterLogEventsResultresponseHandler =
                 new JsonResponseHandler<FilterLogEventsResult>(unmarshaller);
 
             response = invoke(requestresponseHandlerexecutionContext);
 
             return response.getAwsResponse();
         } finally {
             
             endClientExecution(awsRequestMetricsrequestresponse);
         }
     }

    

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

Every PutLogEvents request must include the sequenceToken obtained from the response of the previous request. An upload in a newly created log stream does not require a sequenceToken .

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 timestamp .
  • The maximum number of log events in a batch is 10,000.

Parameters:
putLogEventsRequest Container for the necessary parameters to execute the PutLogEvents service method on AWSLogs.
Returns:
The response from the PutLogEvents service method, as returned by AWSLogs.
Throws:
com.amazonaws.services.logs.model.ServiceUnavailableException
com.amazonaws.services.logs.model.InvalidParameterException
com.amazonaws.services.logs.model.OperationAbortedException
com.amazonaws.services.logs.model.InvalidSequenceTokenException
com.amazonaws.services.logs.model.DataAlreadyAcceptedException
com.amazonaws.services.logs.model.ResourceNotFoundException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AWSLogs indicating either a problem with the data in the request, or a server side issue.
    public PutLogEventsResult putLogEvents(PutLogEventsRequest putLogEventsRequest) {
        ExecutionContext executionContext = createExecutionContext(putLogEventsRequest);
        AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
        awsRequestMetrics.startEvent(.);
        Request<PutLogEventsRequestrequest = null;
        Response<PutLogEventsResultresponse = null;
        
        try {
            awsRequestMetrics.startEvent(.);
            try {
                request = new PutLogEventsRequestMarshaller().marshall(super.beforeMarshalling(putLogEventsRequest));
                // Binds the request metrics to the current request.
                request.setAWSRequestMetrics(awsRequestMetrics);
            } finally {
                awsRequestMetrics.endEvent(.);
            }
            Unmarshaller<PutLogEventsResultJsonUnmarshallerContextunmarshaller =
                new PutLogEventsResultJsonUnmarshaller();
            JsonResponseHandler<PutLogEventsResultresponseHandler =
                new JsonResponseHandler<PutLogEventsResult>(unmarshaller);
            response = invoke(requestresponseHandlerexecutionContext);
            return response.getAwsResponse();
        } finally {
            
            endClientExecution(awsRequestMetricsrequestresponse);
        }
    }

    

Deletes the retention policy of the specified log group. Log events would not expire if they belong to log groups without a retention policy.

Parameters:
deleteRetentionPolicyRequest Container for the necessary parameters to execute the DeleteRetentionPolicy service method on AWSLogs.
Throws:
com.amazonaws.services.logs.model.ServiceUnavailableException
com.amazonaws.services.logs.model.InvalidParameterException
com.amazonaws.services.logs.model.OperationAbortedException
com.amazonaws.services.logs.model.ResourceNotFoundException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AWSLogs indicating either a problem with the data in the request, or a server side issue.
    public void deleteRetentionPolicy(DeleteRetentionPolicyRequest deleteRetentionPolicyRequest) {
        ExecutionContext executionContext = createExecutionContext(deleteRetentionPolicyRequest);
        AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
        awsRequestMetrics.startEvent(.);
        Request<DeleteRetentionPolicyRequestrequest = null;
        
        try {
            awsRequestMetrics.startEvent(.);
            try {
                request = new DeleteRetentionPolicyRequestMarshaller().marshall(super.beforeMarshalling(deleteRetentionPolicyRequest));
                // Binds the request metrics to the current request.
                request.setAWSRequestMetrics(awsRequestMetrics);
            } finally {
                awsRequestMetrics.endEvent(.);
            }
            JsonResponseHandler<VoidresponseHandler = new JsonResponseHandler<Void>(null);
            invoke(requestresponseHandlerexecutionContext);
        } finally {
            
            endClientExecution(awsRequestMetricsrequestnull);
        }
    }
    
    

Retrieves log events from the specified log stream. You can provide an optional time range to filter the results on the event timestamp .

By default, this operation returns as much log events as can fit in a response size of 1MB, up to 10,000 log events. The response will always include a nextForwardToken and a nextBackwardToken in the response body. You can use any of these tokens in subsequent GetLogEvents requests to paginate through events in either forward or backward direction. You can also limit the number of log events returned in the response by specifying the limit parameter in the request.

Parameters:
getLogEventsRequest Container for the necessary parameters to execute the GetLogEvents service method on AWSLogs.
Returns:
The response from the GetLogEvents service method, as returned by AWSLogs.
Throws:
com.amazonaws.services.logs.model.ServiceUnavailableException
com.amazonaws.services.logs.model.InvalidParameterException
com.amazonaws.services.logs.model.ResourceNotFoundException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AWSLogs indicating either a problem with the data in the request, or a server side issue.
    public GetLogEventsResult getLogEvents(GetLogEventsRequest getLogEventsRequest) {
        ExecutionContext executionContext = createExecutionContext(getLogEventsRequest);
        AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
        awsRequestMetrics.startEvent(.);
        Request<GetLogEventsRequestrequest = null;
        Response<GetLogEventsResultresponse = null;
        
        try {
            awsRequestMetrics.startEvent(.);
            try {
                request = new GetLogEventsRequestMarshaller().marshall(super.beforeMarshalling(getLogEventsRequest));
                // Binds the request metrics to the current request.
                request.setAWSRequestMetrics(awsRequestMetrics);
            } finally {
                awsRequestMetrics.endEvent(.);
            }
            Unmarshaller<GetLogEventsResultJsonUnmarshallerContextunmarshaller =
                new GetLogEventsResultJsonUnmarshaller();
            JsonResponseHandler<GetLogEventsResultresponseHandler =
                new JsonResponseHandler<GetLogEventsResult>(unmarshaller);
            response = invoke(requestresponseHandlerexecutionContext);
            return response.getAwsResponse();
        } finally {
            
            endClientExecution(awsRequestMetricsrequestresponse);
        }
    }

    

Creates a new log stream in the specified log group. The name of the log stream must be unique within the log group. There is no limit on the number of log streams that can exist in a log group.

You must use the following guidelines when naming a log stream:

  • Log stream names can be between 1 and 512 characters long.
  • The ':' colon character is not allowed.

Parameters:
createLogStreamRequest Container for the necessary parameters to execute the CreateLogStream service method on AWSLogs.
Throws:
com.amazonaws.services.logs.model.ServiceUnavailableException
com.amazonaws.services.logs.model.InvalidParameterException
com.amazonaws.services.logs.model.ResourceNotFoundException
com.amazonaws.services.logs.model.ResourceAlreadyExistsException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AWSLogs indicating either a problem with the data in the request, or a server side issue.
    public void createLogStream(CreateLogStreamRequest createLogStreamRequest) {
        ExecutionContext executionContext = createExecutionContext(createLogStreamRequest);
        AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
        awsRequestMetrics.startEvent(.);
        Request<CreateLogStreamRequestrequest = null;
        
        try {
            awsRequestMetrics.startEvent(.);
            try {
                request = new CreateLogStreamRequestMarshaller().marshall(super.beforeMarshalling(createLogStreamRequest));
                // Binds the request metrics to the current request.
                request.setAWSRequestMetrics(awsRequestMetrics);
            } finally {
                awsRequestMetrics.endEvent(.);
            }
            JsonResponseHandler<VoidresponseHandler = new JsonResponseHandler<Void>(null);
            invoke(requestresponseHandlerexecutionContext);
        } finally {
            
            endClientExecution(awsRequestMetricsrequestnull);
        }
    }
    
    

Deletes a log stream and permanently deletes all the archived log events associated with it.

Parameters:
deleteLogStreamRequest Container for the necessary parameters to execute the DeleteLogStream service method on AWSLogs.
Throws:
com.amazonaws.services.logs.model.ServiceUnavailableException
com.amazonaws.services.logs.model.InvalidParameterException
com.amazonaws.services.logs.model.OperationAbortedException
com.amazonaws.services.logs.model.ResourceNotFoundException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AWSLogs indicating either a problem with the data in the request, or a server side issue.
    public void deleteLogStream(DeleteLogStreamRequest deleteLogStreamRequest) {
        ExecutionContext executionContext = createExecutionContext(deleteLogStreamRequest);
        AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
        awsRequestMetrics.startEvent(.);
        Request<DeleteLogStreamRequestrequest = null;
        
        try {
            awsRequestMetrics.startEvent(.);
            try {
                request = new DeleteLogStreamRequestMarshaller().marshall(super.beforeMarshalling(deleteLogStreamRequest));
                // Binds the request metrics to the current request.
                request.setAWSRequestMetrics(awsRequestMetrics);
            } finally {
                awsRequestMetrics.endEvent(.);
            }
            JsonResponseHandler<VoidresponseHandler = new JsonResponseHandler<Void>(null);
            invoke(requestresponseHandlerexecutionContext);
        } finally {
            
            endClientExecution(awsRequestMetricsrequestnull);
        }
    }
    
    

Returns all the log groups that are associated with the AWS account making the request. The list returned in the response is ASCII-sorted by log group name.

By default, this operation returns up to 50 log groups. If there are more log groups to list, the response would contain a nextToken value in the response body. You can also limit the number of log groups returned in the response by specifying the limit parameter in the request.

Parameters:
describeLogGroupsRequest Container for the necessary parameters to execute the DescribeLogGroups service method on AWSLogs.
Returns:
The response from the DescribeLogGroups service method, as returned by AWSLogs.
Throws:
com.amazonaws.services.logs.model.ServiceUnavailableException
com.amazonaws.services.logs.model.InvalidParameterException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AWSLogs indicating either a problem with the data in the request, or a server side issue.
    public DescribeLogGroupsResult describeLogGroups(DescribeLogGroupsRequest describeLogGroupsRequest) {
        ExecutionContext executionContext = createExecutionContext(describeLogGroupsRequest);
        AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
        awsRequestMetrics.startEvent(.);
        Request<DescribeLogGroupsRequestrequest = null;
        Response<DescribeLogGroupsResultresponse = null;
        
        try {
            awsRequestMetrics.startEvent(.);
            try {
                request = new DescribeLogGroupsRequestMarshaller().marshall(super.beforeMarshalling(describeLogGroupsRequest));
                // Binds the request metrics to the current request.
                request.setAWSRequestMetrics(awsRequestMetrics);
            } finally {
                awsRequestMetrics.endEvent(.);
            }
            Unmarshaller<DescribeLogGroupsResultJsonUnmarshallerContextunmarshaller =
                new DescribeLogGroupsResultJsonUnmarshaller();
            JsonResponseHandler<DescribeLogGroupsResultresponseHandler =
                new JsonResponseHandler<DescribeLogGroupsResult>(unmarshaller);
            response = invoke(requestresponseHandlerexecutionContext);
            return response.getAwsResponse();
        } finally {
            
            endClientExecution(awsRequestMetricsrequestresponse);
        }
    }

    

Returns all the log groups that are associated with the AWS account making the request. The list returned in the response is ASCII-sorted by log group name.

By default, this operation returns up to 50 log groups. If there are more log groups to list, the response would contain a nextToken value in the response body. You can also limit the number of log groups returned in the response by specifying the limit parameter in the request.

Returns:
The response from the DescribeLogGroups service method, as returned by AWSLogs.
Throws:
com.amazonaws.services.logs.model.ServiceUnavailableException
com.amazonaws.services.logs.model.InvalidParameterException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AWSLogs indicating either a problem with the data in the request, or a server side issue.
        return describeLogGroups(new DescribeLogGroupsRequest());
    }
    @Override
    public void setEndpoint(String endpoint) {
        super.setEndpoint(endpoint);
    }
    @Override
    public void setEndpoint(String endpointString serviceNameString regionIdthrows IllegalArgumentException {
        super.setEndpoint(endpointserviceNameregionId);
    }

    
Returns additional metadata for a previously executed successful, request, typically used for debugging issues where a service isn't acting as expected. This data isn't considered part of the result data returned by an operation, so it's available through this separate, diagnostic interface.

Response metadata is only cached for a limited period of time, so if you need to access this extra diagnostic information for an executed request, you should use this method to retrieve it as soon as possible after executing the request.

Parameters:
request The originally executed request
Returns:
The response metadata for the specified request, or null if none is available.
        return .getResponseMetadataForRequest(request);
    }
    private <X, Y extends AmazonWebServiceRequestResponse<X> invoke(Request<Y> request,
            HttpResponseHandler<AmazonWebServiceResponse<X>> responseHandler,
            ExecutionContext executionContext) {
        request.setEndpoint();
        request.setTimeOffset();
        AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
        AWSCredentials credentials;
        awsRequestMetrics.startEvent(.);
        try {
            credentials = .getCredentials();
        } finally {
            awsRequestMetrics.endEvent(.);
        }
        AmazonWebServiceRequest originalRequest = request.getOriginalRequest();
        if (originalRequest != null && originalRequest.getRequestCredentials() != null) {
            credentials = originalRequest.getRequestCredentials();
        }
        executionContext.setCredentials(credentials);
        JsonErrorResponseHandler errorResponseHandler = new JsonErrorResponseHandler();
        Response<X> result = .execute(requestresponseHandler,
                errorResponseHandlerexecutionContext);
        return result;
    }
}
        
New to GrepCode? Check out our FAQ X