Skip to content

put_grouping_configuration

put_grouping_configuration(
    grouping_attribute_definitions: GroupingAttributeDefinitions,
    *,
    config_overrides: Optional[ApplicationSignalsClientConfig] = None,
) -> PutGroupingConfigurationOutput

Creates or updates the grouping configuration for this account. This operation allows you to define custom grouping attributes that determine how services are logically grouped based on telemetry attributes, Amazon Web Services tags, or predefined mappings. These grouping attributes can then be used to organize and filter services in the Application Signals console and APIs.

Parameters:

  • grouping_attribute_definitions (GroupingAttributeDefinitions) –

    An array of grouping attribute definitions that specify how services should be grouped. Each definition includes a friendly name, source keys to derive the grouping value from, and an optional default value.

Raises:

Source code in docs_src/capo_application_signals/_services/application_signals.py
def put_grouping_configuration(
    self,
    grouping_attribute_definitions: "capo_application_signals.types.grouping_attribute_definitions.GroupingAttributeDefinitions",
    *,
    config_overrides: Optional[ApplicationSignalsClientConfig] = None,
) -> "capo_application_signals.types.put_grouping_configuration_output.PutGroupingConfigurationOutput":
    """<p>Creates or updates the grouping configuration for this account. This operation allows you to define custom grouping attributes that determine how services are logically grouped based on telemetry attributes, Amazon Web Services tags, or predefined mappings. These grouping attributes can then be used to organize and filter services in the Application Signals console and APIs.</p>

    Args:
        grouping_attribute_definitions: <p>An array of grouping attribute definitions that specify how services should be grouped. Each definition includes a friendly name, source keys to derive the grouping value from, and an optional default value.</p>

    Raises:
        capo_application_signals.errors.access_denied_exception.AccessDeniedException: <p>You don't have sufficient permissions to perform this action.</p>
        capo_application_signals.errors.throttling_exception.ThrottlingException: <p>The request was throttled because of quota limits.</p>
        capo_application_signals.errors.validation_exception.ValidationException: <p>The resource is not valid.</p>
        capo_application_signals.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    def _handler(
        req: "OperationRequest[capo_application_signals.types.put_grouping_configuration_input.PutGroupingConfigurationInput]",
    ) -> OperationResponse[
        "capo_application_signals.types.put_grouping_configuration_output.PutGroupingConfigurationOutput"
    ]:
        import capo_application_signals._operations.application_signals.put_grouping_configuration

        output, http_response = (
            capo_application_signals._operations.application_signals.put_grouping_configuration.put_grouping_configuration(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("PutGroupingConfiguration")
    )
    input_: capo_application_signals.types.put_grouping_configuration_input.PutGroupingConfigurationInput = {
        "grouping_attribute_definitions": grouping_attribute_definitions
    }

    response = execute_pipeline(
        OperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    response.response.close()
    return response.output