Amazon CloudWatch Application Insights

2022/06/02 - Amazon CloudWatch Application Insights - 3 updated api methods

Changes  Provide Account Level onboarding support through CFN/CLI

CreateApplication (updated) Link ¶
Changes (request)
{'GroupingType': 'ACCOUNT_BASED'}

Adds an application that is created from a resource group.

See also: AWS API Documentation

Request Syntax

client.create_application(
    ResourceGroupName='string',
    OpsCenterEnabled=True|False,
    CWEMonitorEnabled=True|False,
    OpsItemSNSTopicArn='string',
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ],
    AutoConfigEnabled=True|False,
    AutoCreate=True|False,
    GroupingType='ACCOUNT_BASED'
)
type ResourceGroupName

string

param ResourceGroupName

The name of the resource group.

type OpsCenterEnabled

boolean

param OpsCenterEnabled

When set to true , creates opsItems for any problems detected on an application.

type CWEMonitorEnabled

boolean

param CWEMonitorEnabled

Indicates whether Application Insights can listen to CloudWatch events for the application resources, such as instance terminated , failed deployment , and others.

type OpsItemSNSTopicArn

string

param OpsItemSNSTopicArn

The SNS topic provided to Application Insights that is associated to the created opsItem. Allows you to receive notifications for updates to the opsItem.

type Tags

list

param Tags

List of tags to add to the application. tag key ( Key ) and an associated tag value ( Value ). The maximum length of a tag key is 128 characters. The maximum length of a tag value is 256 characters.

  • (dict) --

    An object that defines the tags associated with an application. A tag is a label that you optionally define and associate with an application. Tags can help you categorize and manage resources in different ways, such as by purpose, owner, environment, or other criteria.

    Each tag consists of a required tag key and an associated tag value , both of which you define. A tag key is a general label that acts as a category for a more specific tag value. A tag value acts as a descriptor within a tag key. A tag key can contain as many as 128 characters. A tag value can contain as many as 256 characters. The characters can be Unicode letters, digits, white space, or one of the following symbols: _ . : / = + -. The following additional restrictions apply to tags:

    • Tag keys and values are case sensitive.

    • For each associated resource, each tag key must be unique and it can have only one value.

    • The aws: prefix is reserved for use by AWS; you can’t use it in any tag keys or values that you define. In addition, you can't edit or remove tag keys or values that use this prefix.

    • Key (string) -- [REQUIRED]

      One part of a key-value pair that defines a tag. The maximum length of a tag key is 128 characters. The minimum length is 1 character.

    • Value (string) -- [REQUIRED]

      The optional part of a key-value pair that defines a tag. The maximum length of a tag value is 256 characters. The minimum length is 0 characters. If you don't want an application to have a specific tag value, don't specify a value for this parameter.

type AutoConfigEnabled

boolean

param AutoConfigEnabled

Indicates whether Application Insights automatically configures unmonitored resources in the resource group.

type AutoCreate

boolean

param AutoCreate

Configures all of the resources in the resource group by applying the recommended configurations.

type GroupingType

string

param GroupingType

Application Insights can create applications based on a resource group or on an account. To create an account-based application using all of the resources in the account, set this parameter to ACCOUNT_BASED .

rtype

dict

returns

Response Syntax

{
    'ApplicationInfo': {
        'ResourceGroupName': 'string',
        'LifeCycle': 'string',
        'OpsItemSNSTopicArn': 'string',
        'OpsCenterEnabled': True|False,
        'CWEMonitorEnabled': True|False,
        'Remarks': 'string',
        'AutoConfigEnabled': True|False,
        'DiscoveryType': 'RESOURCE_GROUP_BASED'|'ACCOUNT_BASED'
    }
}

Response Structure

  • (dict) --

    • ApplicationInfo (dict) --

      Information about the application.

      • ResourceGroupName (string) --

        The name of the resource group used for the application.

      • LifeCycle (string) --

        The lifecycle of the application.

      • OpsItemSNSTopicArn (string) --

        The SNS topic provided to Application Insights that is associated to the created opsItems to receive SNS notifications for opsItem updates.

      • OpsCenterEnabled (boolean) --

        Indicates whether Application Insights will create opsItems for any problem detected by Application Insights for an application.

      • CWEMonitorEnabled (boolean) --

        Indicates whether Application Insights can listen to CloudWatch events for the application resources, such as instance terminated , failed deployment , and others.

      • Remarks (string) --

        The issues on the user side that block Application Insights from successfully monitoring an application. Example remarks include:

        • “Configuring application, detected 1 Errors, 3 Warnings”

        • “Configuring application, detected 1 Unconfigured Components”

      • AutoConfigEnabled (boolean) --

        Indicates whether auto-configuration is turned on for this application.

      • DiscoveryType (string) --

        The method used by Application Insights to onboard your resources.

DescribeProblem (updated) Link ¶
Changes (response)
{'Problem': {'SeverityLevel': {'Informative'}}}

Describes an application problem.

See also: AWS API Documentation

Request Syntax

client.describe_problem(
    ProblemId='string'
)
type ProblemId

string

param ProblemId

[REQUIRED]

The ID of the problem.

rtype

dict

returns

Response Syntax

{
    'Problem': {
        'Id': 'string',
        'Title': 'string',
        'Insights': 'string',
        'Status': 'IGNORE'|'RESOLVED'|'PENDING'|'RECURRING',
        'AffectedResource': 'string',
        'StartTime': datetime(2015, 1, 1),
        'EndTime': datetime(2015, 1, 1),
        'SeverityLevel': 'Informative'|'Low'|'Medium'|'High',
        'ResourceGroupName': 'string',
        'Feedback': {
            'string': 'NOT_SPECIFIED'|'USEFUL'|'NOT_USEFUL'
        },
        'RecurringCount': 123,
        'LastRecurrenceTime': datetime(2015, 1, 1)
    }
}

Response Structure

  • (dict) --

    • Problem (dict) --

      Information about the problem.

      • Id (string) --

        The ID of the problem.

      • Title (string) --

        The name of the problem.

      • Insights (string) --

        A detailed analysis of the problem using machine learning.

      • Status (string) --

        The status of the problem.

      • AffectedResource (string) --

        The resource affected by the problem.

      • StartTime (datetime) --

        The time when the problem started, in epoch seconds.

      • EndTime (datetime) --

        The time when the problem ended, in epoch seconds.

      • SeverityLevel (string) --

        A measure of the level of impact of the problem.

      • ResourceGroupName (string) --

        The name of the resource group affected by the problem.

      • Feedback (dict) --

        Feedback provided by the user about the problem.

        • (string) --

          • (string) --

      • RecurringCount (integer) --

        The number of times that the same problem reoccurred after the first time it was resolved.

      • LastRecurrenceTime (datetime) --

        The last time that the problem reoccurred after its last resolution.

ListProblems (updated) Link ¶
Changes (response)
{'ProblemList': {'SeverityLevel': {'Informative'}}}

Lists the problems with your application.

See also: AWS API Documentation

Request Syntax

client.list_problems(
    ResourceGroupName='string',
    StartTime=datetime(2015, 1, 1),
    EndTime=datetime(2015, 1, 1),
    MaxResults=123,
    NextToken='string',
    ComponentName='string'
)
type ResourceGroupName

string

param ResourceGroupName

The name of the resource group.

type StartTime

datetime

param StartTime

The time when the problem was detected, in epoch seconds. If you don't specify a time frame for the request, problems within the past seven days are returned.

type EndTime

datetime

param EndTime

The time when the problem ended, in epoch seconds. If not specified, problems within the past seven days are returned.

type MaxResults

integer

param MaxResults

The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value.

type NextToken

string

param NextToken

The token to request the next page of results.

type ComponentName

string

param ComponentName

The name of the component.

rtype

dict

returns

Response Syntax

{
    'ProblemList': [
        {
            'Id': 'string',
            'Title': 'string',
            'Insights': 'string',
            'Status': 'IGNORE'|'RESOLVED'|'PENDING'|'RECURRING',
            'AffectedResource': 'string',
            'StartTime': datetime(2015, 1, 1),
            'EndTime': datetime(2015, 1, 1),
            'SeverityLevel': 'Informative'|'Low'|'Medium'|'High',
            'ResourceGroupName': 'string',
            'Feedback': {
                'string': 'NOT_SPECIFIED'|'USEFUL'|'NOT_USEFUL'
            },
            'RecurringCount': 123,
            'LastRecurrenceTime': datetime(2015, 1, 1)
        },
    ],
    'NextToken': 'string',
    'ResourceGroupName': 'string'
}

Response Structure

  • (dict) --

    • ProblemList (list) --

      The list of problems.

      • (dict) --

        Describes a problem that is detected by correlating observations.

        • Id (string) --

          The ID of the problem.

        • Title (string) --

          The name of the problem.

        • Insights (string) --

          A detailed analysis of the problem using machine learning.

        • Status (string) --

          The status of the problem.

        • AffectedResource (string) --

          The resource affected by the problem.

        • StartTime (datetime) --

          The time when the problem started, in epoch seconds.

        • EndTime (datetime) --

          The time when the problem ended, in epoch seconds.

        • SeverityLevel (string) --

          A measure of the level of impact of the problem.

        • ResourceGroupName (string) --

          The name of the resource group affected by the problem.

        • Feedback (dict) --

          Feedback provided by the user about the problem.

          • (string) --

            • (string) --

        • RecurringCount (integer) --

          The number of times that the same problem reoccurred after the first time it was resolved.

        • LastRecurrenceTime (datetime) --

          The last time that the problem reoccurred after its last resolution.

    • NextToken (string) --

      The token used to retrieve the next page of results. This value is null when there are no more results to return.

    • ResourceGroupName (string) --

      The name of the resource group.