Skip to content

update_license_manager_report_generator

update_license_manager_report_generator(
    license_manager_report_generator_arn: String,
    report_generator_name: ReportGeneratorName,
    type: ReportTypeList,
    report_context: ReportContext,
    report_frequency: ReportFrequency,
    client_token: ClientRequestToken,
    *,
    config_overrides: Optional[LicenseManagerClientConfig] = None,
    description: Optional[String] = None,
) -> UpdateLicenseManagerReportGeneratorResponse

Updates a report generator.

After you make changes to a report generator, it starts generating new reports within 60 minutes of being updated.

Parameters:

  • license_manager_report_generator_arn (String) –

    Amazon Resource Name (ARN) of the report generator to update.

  • report_generator_name (ReportGeneratorName) –

    Name of the report generator.

  • type (ReportTypeList) –

    Type of reports to generate. The following report types are supported:

    • License configuration report - Reports the number and details of consumed licenses for a license configuration.

    • Resource report - Reports the tracked licenses and resource consumption for a license configuration.

  • report_context (ReportContext) –

    The report context.

  • report_frequency (ReportFrequency) –

    Frequency by which reports are generated.

  • client_token (ClientRequestToken) –

    Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

  • description (Optional[String], default: None ) –

    Description of the report generator.

Raises:

Source code in docs_src/capo_license_manager/_services/license_manager.py
def update_license_manager_report_generator(
    self,
    license_manager_report_generator_arn: "capo_license_manager.types.string.String",
    report_generator_name: "capo_license_manager.types.report_generator_name.ReportGeneratorName",
    type: "capo_license_manager.types.report_type_list.ReportTypeList",
    report_context: "capo_license_manager.types.report_context.ReportContext",
    report_frequency: "capo_license_manager.types.report_frequency.ReportFrequency",
    client_token: "capo_license_manager.types.client_request_token.ClientRequestToken",
    *,
    config_overrides: Optional[LicenseManagerClientConfig] = None,
    description: Optional["capo_license_manager.types.string.String"] = None,
) -> "capo_license_manager.types.update_license_manager_report_generator_response.UpdateLicenseManagerReportGeneratorResponse":
    """<p>Updates a report generator.</p> <p>After you make changes to a report generator, it starts generating new reports within 60 minutes of being updated.</p>

    Args:
        license_manager_report_generator_arn: <p>Amazon Resource Name (ARN) of the report generator to update.</p>
        report_generator_name: <p>Name of the report generator.</p>
        type: <p>Type of reports to generate. The following report types are supported:</p> <ul> <li> <p>License configuration report - Reports the number and details of consumed licenses for a license configuration.</p> </li> <li> <p>Resource report - Reports the tracked licenses and resource consumption for a license configuration.</p> </li> </ul>
        report_context: <p>The report context.</p>
        report_frequency: <p>Frequency by which reports are generated.</p>
        client_token: <p>Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.</p>
        description: <p>Description of the report generator.</p>

    Raises:
        capo_license_manager.errors.access_denied_exception.AccessDeniedException: <p>Access to resource denied.</p>
        capo_license_manager.errors.authorization_exception.AuthorizationException: <p>The Amazon Web Services user account does not have permission to perform the action. Check the IAM policy associated with this account.</p>
        capo_license_manager.errors.invalid_parameter_value_exception.InvalidParameterValueException: <p>One or more parameter values are not valid.</p>
        capo_license_manager.errors.rate_limit_exceeded_exception.RateLimitExceededException: <p>Too many requests have been submitted. Try again after a brief wait.</p>
        capo_license_manager.errors.resource_limit_exceeded_exception.ResourceLimitExceededException: <p>Your resource limits have been exceeded.</p>
        capo_license_manager.errors.resource_not_found_exception.ResourceNotFoundException: <p>The resource cannot be found.</p>
        capo_license_manager.errors.server_internal_exception.ServerInternalException: <p>The server experienced an internal error. Try again.</p>
        capo_license_manager.errors.validation_exception.ValidationException: <p>The provided input is not valid. Try your request again.</p>
        capo_license_manager.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    def _handler(
        req: "OperationRequest[capo_license_manager.types.update_license_manager_report_generator_request.UpdateLicenseManagerReportGeneratorRequest]",
    ) -> OperationResponse[
        "capo_license_manager.types.update_license_manager_report_generator_response.UpdateLicenseManagerReportGeneratorResponse"
    ]:
        import capo_license_manager._operations.aws_license_manager.update_license_manager_report_generator

        output, http_response = (
            capo_license_manager._operations.aws_license_manager.update_license_manager_report_generator.update_license_manager_report_generator(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("UpdateLicenseManagerReportGenerator")
    )
    input_: capo_license_manager.types.update_license_manager_report_generator_request.UpdateLicenseManagerReportGeneratorRequest = {
        "license_manager_report_generator_arn": license_manager_report_generator_arn,
        "report_generator_name": report_generator_name,
        "type": type,
        "report_context": report_context,
        "report_frequency": report_frequency,
        "client_token": client_token,
    }
    if description is not None:
        input_["description"] = description

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