Class MonitorController


  • @RestController
    @EnableHypermediaSupport(type=HAL)
    public class MonitorController
    extends Object
    Controller for all monitoring endpoints.
    • Method Detail

      • getTaskStatusReport

        @GetMapping(path="/api/v1/monitor/tasks-status-report")
        @Transactional(readOnly=true,
                       rollbackFor=java.lang.Exception.class)
        public org.springframework.http.ResponseEntity<ReportRepresentationModel> getTaskStatusReport​(@RequestParam(required=false)
                                                                                                      List<String> domains,
                                                                                                      @RequestParam(required=false)
                                                                                                      List<pro.taskana.task.api.TaskState> states,
                                                                                                      @RequestParam(name="workbasket-ids",required=false)
                                                                                                      List<String> workbasketIds,
                                                                                                      @RequestParam(name="priority-minimum",required=false)
                                                                                                      Integer priorityMinimum)
                                                                                               throws pro.taskana.common.api.exceptions.NotAuthorizedException
        This endpoint generates a Task Status Report.

        A Task Status Report contains the total number of tasks, clustered in their Task States and grouped by Workbaskets. Each row represents a Workbasket while each column represents a Task State.

        Parameters:
        domains - Filter the report values by domains.
        states - Filter the report values by Task states.
        workbasketIds - Filter the report values by Workbasket Ids.
        priorityMinimum - Filter the report values by a minimum priority.
        Returns:
        the computed TaskStatusReport
        Throws:
        pro.taskana.common.api.exceptions.NotAuthorizedException - if the current user is not authorized to compute the report
      • getWorkbasketReport

        @GetMapping(path="/api/v1/monitor/tasks-workbasket-report")
        @Transactional(readOnly=true,
                       rollbackFor=java.lang.Exception.class)
        public org.springframework.http.ResponseEntity<ReportRepresentationModel> getWorkbasketReport​(@RequestParam
                                                                                                      List<pro.taskana.task.api.TaskState> states,
                                                                                                      @RequestParam(required=false)
                                                                                                      pro.taskana.monitor.api.TaskTimestamp taskTimestamp)
                                                                                               throws pro.taskana.common.api.exceptions.NotAuthorizedException,
                                                                                                      pro.taskana.common.api.exceptions.InvalidArgumentException
        This endpoint generates a Workbasket Report.

        A WorkbasketReport contains the total numbers of tasks, clustered by the a Task Timestamp date range and grouped by Workbaskets. Each row represents a Workbasket while each column represents a date range.

        Parameters:
        states - Filter the report by task states
        taskTimestamp - determine which task timestamp should be used for comparison
        Returns:
        the computed report
        Throws:
        pro.taskana.common.api.exceptions.NotAuthorizedException - if the current user is not authorized to compute the report
        pro.taskana.common.api.exceptions.InvalidArgumentException - TODO: this is never thrown ...
      • getTasksWorkbasketPlannedDateReport

        @GetMapping(path="/api/v1/monitor/tasks-workbasket-planned-date-report")
        @Transactional(readOnly=true,
                       rollbackFor=java.lang.Exception.class)
        public org.springframework.http.ResponseEntity<ReportRepresentationModel> getTasksWorkbasketPlannedDateReport​(@RequestParam("daysInPast")
                                                                                                                      int daysInPast,
                                                                                                                      @RequestParam("states")
                                                                                                                      List<pro.taskana.task.api.TaskState> states)
                                                                                                               throws pro.taskana.common.api.exceptions.NotAuthorizedException,
                                                                                                                      pro.taskana.common.api.exceptions.InvalidArgumentException
        Throws:
        pro.taskana.common.api.exceptions.NotAuthorizedException
        pro.taskana.common.api.exceptions.InvalidArgumentException
      • getClassificationReport

        @GetMapping(path="/api/v1/monitor/tasks-classification-report")
        @Transactional(readOnly=true,
                       rollbackFor=java.lang.Exception.class)
        public org.springframework.http.ResponseEntity<ReportRepresentationModel> getClassificationReport​(@RequestParam(required=false)
                                                                                                          pro.taskana.monitor.api.TaskTimestamp taskTimestamp)
                                                                                                   throws pro.taskana.common.api.exceptions.NotAuthorizedException,
                                                                                                          pro.taskana.common.api.exceptions.InvalidArgumentException
        This endpoint generates a Classification Report.

        A Classification Report contains the total numbers of tasks, clustered by the Task Timestamp date range and grouped by Classifications. Each row represents a Classification while each column represents a date range.

        Parameters:
        taskTimestamp - determine which Task Timestamp should be used for comparison
        Returns:
        the computed report
        Throws:
        pro.taskana.common.api.exceptions.NotAuthorizedException - if the current user is not authorized to compute the report
        pro.taskana.common.api.exceptions.InvalidArgumentException - TODO: this is never thrown
      • getTimestampReport

        @GetMapping(path="/api/v1/monitor/timestamp-report")
        @Transactional(readOnly=true,
                       rollbackFor=java.lang.Exception.class)
        public org.springframework.http.ResponseEntity<ReportRepresentationModel> getTimestampReport()
                                                                                              throws pro.taskana.common.api.exceptions.NotAuthorizedException,
                                                                                                     pro.taskana.common.api.exceptions.InvalidArgumentException
        This endpoint generates a Timestamp Report.

        A Timestamp Report contains the total number of tasks, clustered by date range and grouped by its Task Status. Each row represents a Task Status while each column represents a date range. Each row can be expanded to further group the tasks by their Org Level (1-4)

        Returns:
        the computed report
        Throws:
        pro.taskana.common.api.exceptions.NotAuthorizedException - if the current user is not authorized to compute the report
        pro.taskana.common.api.exceptions.InvalidArgumentException - TODO: this is never thrown