Skip to content

put_telemetry_records async

put_telemetry_records(
    telemetry_records: TelemetryRecordList,
    *,
    config_overrides: Optional[AsyncXRayClientConfig] = None,
    ec2_instance_id: Optional[EC2InstanceId] = None,
    hostname: Optional[Hostname] = None,
    resource_arn: Optional[ResourceARN] = None,
) -> PutTelemetryRecordsResult

Used by the Amazon Web Services X-Ray daemon to upload telemetry.

Parameters:

Raises:

Source code in docs_src/capo_xray/_services/async_x_ray.py
async def put_telemetry_records(
    self,
    telemetry_records: "capo_xray.types.telemetry_record_list.TelemetryRecordList",
    *,
    config_overrides: Optional[AsyncXRayClientConfig] = None,
    ec2_instance_id: Optional[
        "capo_xray.types.ec2_instance_id.EC2InstanceId"
    ] = None,
    hostname: Optional["capo_xray.types.hostname.Hostname"] = None,
    resource_arn: Optional["capo_xray.types.resource_arn.ResourceARN"] = None,
) -> "capo_xray.types.put_telemetry_records_result.PutTelemetryRecordsResult":
    """<p>Used by the Amazon Web Services X-Ray daemon to upload telemetry.</p>

    Args:
        telemetry_records: <p></p>
        ec2_instance_id: <p></p>
        hostname: <p></p>
        resource_arn: <p></p>

    Raises:
        capo_xray.errors.invalid_request_exception.InvalidRequestException: <p>The request is missing required parameters or has invalid parameters.</p>
        capo_xray.errors.throttled_exception.ThrottledException: <p>The request exceeds the maximum number of requests per second.</p>
        capo_xray.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_xray.types.put_telemetry_records_request.PutTelemetryRecordsRequest]",
    ) -> AsyncOperationResponse[
        "capo_xray.types.put_telemetry_records_result.PutTelemetryRecordsResult"
    ]:
        import capo_xray._operations.awsx_ray.put_telemetry_records

        (
            output,
            http_response,
        ) = await capo_xray._operations.awsx_ray.put_telemetry_records.async_put_telemetry_records(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("PutTelemetryRecords")
    )
    input_: capo_xray.types.put_telemetry_records_request.PutTelemetryRecordsRequest = {
        "telemetry_records": telemetry_records
    }
    if ec2_instance_id is not None:
        input_["ec2_instance_id"] = ec2_instance_id
    if hostname is not None:
        input_["hostname"] = hostname
    if resource_arn is not None:
        input_["resource_arn"] = resource_arn

    response = await aexecute_pipeline(
        AsyncOperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    await response.response.aclose()
    return response.output