:doc:`DataPipeline <../../datapipeline>` / Client / report_task_runner_heartbeat

****************************
report_task_runner_heartbeat
****************************



.. py:method:: DataPipeline.Client.report_task_runner_heartbeat(**kwargs)

  

  Task runners call ``ReportTaskRunnerHeartbeat`` every 15 minutes to indicate that they are operational. If the AWS Data Pipeline Task Runner is launched on a resource managed by AWS Data Pipeline, the web service can use this call to detect when the task runner application has failed and restart a new instance.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/datapipeline-2012-10-29/ReportTaskRunnerHeartbeat>`_  


  **Request Syntax**
  ::

    response = client.report_task_runner_heartbeat(
        taskrunnerId='string',
        workerGroup='string',
        hostname='string'
    )
    
  :type taskrunnerId: string
  :param taskrunnerId: **[REQUIRED]** 

    The ID of the task runner. This value should be unique across your AWS account. In the case of AWS Data Pipeline Task Runner launched on a resource managed by AWS Data Pipeline, the web service provides a unique identifier when it launches the application. If you have written a custom task runner, you should assign a unique identifier for the task runner.

    

  
  :type workerGroup: string
  :param workerGroup: 

    The type of task the task runner is configured to accept and process. The worker group is set as a field on objects in the pipeline when they are created. You can only specify a single value for ``workerGroup``. There are no wildcard values permitted in ``workerGroup``; the string must be an exact, case-sensitive, match.

    

  
  :type hostname: string
  :param hostname: 

    The public DNS name of the task runner.

    

  
  
  :rtype: dict
  :returns: 
    
    **Response Syntax**

    
    ::

      {
          'terminate': True|False
      }
      
    **Response Structure**

    

    - *(dict) --* 

      Contains the output of ReportTaskRunnerHeartbeat.

      
      

      - **terminate** *(boolean) --* 

        Indicates whether the calling task runner should terminate.

        
  
  **Exceptions**
  
  *   :py:class:`DataPipeline.Client.exceptions.InternalServiceError`

  
  *   :py:class:`DataPipeline.Client.exceptions.InvalidRequestException`

  