{
  "jobs": 20,
  "workers": 4,
  "workDurationMs": 50,
  "started": 20,
  "completed": 20,
  "canceled": 0,
  "notStarted": 0,
  "durationMs": 251,
  "jobsPerSec": 79.7,
  "reason": "completed normally",
  "byWorker": [
    {
      "workerId": 1,
      "jobs": 5,
      "canceled": 0,
      "jobIds": [
        1,
        7,
        10,
        16,
        18
      ],
      "canceledIds": []
    },
    {
      "workerId": 2,
      "jobs": 5,
      "canceled": 0,
      "jobIds": [
        2,
        5,
        12,
        14,
        19
      ],
      "canceledIds": []
    },
    {
      "workerId": 3,
      "jobs": 5,
      "canceled": 0,
      "jobIds": [
        3,
        6,
        11,
        13,
        17
      ],
      "canceledIds": []
    },
    {
      "workerId": 4,
      "jobs": 5,
      "canceled": 0,
      "jobIds": [
        4,
        8,
        9,
        15,
        20
      ],
      "canceledIds": []
    }
  ],
  "events": [
    {
      "atMs": 0,
      "kind": "worker_start",
      "actor": "worker 1",
      "workerId": 1
    },
    {
      "atMs": 0,
      "kind": "worker_start",
      "actor": "worker 2",
      "workerId": 2
    },
    {
      "atMs": 0,
      "kind": "worker_start",
      "actor": "worker 3",
      "workerId": 3
    },
    {
      "atMs": 0,
      "kind": "worker_start",
      "actor": "worker 4",
      "workerId": 4
    },
    {
      "atMs": 0,
      "kind": "job_send_attempt",
      "actor": "producer",
      "jobId": 1
    },
    {
      "atMs": 0,
      "kind": "job_queued",
      "actor": "producer",
      "jobId": 1
    },
    {
      "atMs": 0,
      "kind": "job_send_attempt",
      "actor": "producer",
      "jobId": 2
    },
    {
      "atMs": 0,
      "kind": "job_queued",
      "actor": "producer",
      "jobId": 2
    },
    {
      "atMs": 0,
      "kind": "job_send_attempt",
      "actor": "producer",
      "jobId": 3
    },
    {
      "atMs": 0,
      "kind": "job_queued",
      "actor": "producer",
      "jobId": 3
    },
    {
      "atMs": 0,
      "kind": "job_send_attempt",
      "actor": "producer",
      "jobId": 4
    },
    {
      "atMs": 0,
      "kind": "job_queued",
      "actor": "producer",
      "jobId": 4
    },
    {
      "atMs": 0,
      "kind": "job_send_attempt",
      "actor": "producer",
      "jobId": 5
    },
    {
      "atMs": 0,
      "kind": "job_started",
      "actor": "worker 4",
      "jobId": 4,
      "workerId": 4
    },
    {
      "atMs": 0,
      "kind": "job_started",
      "actor": "worker 1",
      "jobId": 1,
      "workerId": 1
    },
    {
      "atMs": 0,
      "kind": "job_started",
      "actor": "worker 2",
      "jobId": 2,
      "workerId": 2
    },
    {
      "atMs": 0,
      "kind": "job_started",
      "actor": "worker 3",
      "jobId": 3,
      "workerId": 3
    },
    {
      "atMs": 50,
      "kind": "job_done",
      "actor": "worker 2",
      "jobId": 2,
      "workerId": 2
    },
    {
      "atMs": 50,
      "kind": "job_started",
      "actor": "worker 2",
      "jobId": 5,
      "workerId": 2
    },
    {
      "atMs": 50,
      "kind": "job_done",
      "actor": "worker 3",
      "jobId": 3,
      "workerId": 3
    },
    {
      "atMs": 50,
      "kind": "job_queued",
      "actor": "producer",
      "jobId": 5,
      "waitMs": 50
    },
    {
      "atMs": 50,
      "kind": "job_send_attempt",
      "actor": "producer",
      "jobId": 6
    },
    {
      "atMs": 50,
      "kind": "job_queued",
      "actor": "producer",
      "jobId": 6
    },
    {
      "atMs": 50,
      "kind": "job_send_attempt",
      "actor": "producer",
      "jobId": 7
    },
    {
      "atMs": 50,
      "kind": "job_started",
      "actor": "worker 3",
      "jobId": 6,
      "workerId": 3
    },
    {
      "atMs": 50,
      "kind": "job_done",
      "actor": "worker 1",
      "jobId": 1,
      "workerId": 1
    },
    {
      "atMs": 50,
      "kind": "job_started",
      "actor": "worker 1",
      "jobId": 7,
      "workerId": 1
    },
    {
      "atMs": 50,
      "kind": "job_done",
      "actor": "worker 4",
      "jobId": 4,
      "workerId": 4
    },
    {
      "atMs": 50,
      "kind": "job_queued",
      "actor": "producer",
      "jobId": 7
    },
    {
      "atMs": 50,
      "kind": "job_send_attempt",
      "actor": "producer",
      "jobId": 8
    },
    {
      "atMs": 50,
      "kind": "job_queued",
      "actor": "producer",
      "jobId": 8
    },
    {
      "atMs": 50,
      "kind": "job_send_attempt",
      "actor": "producer",
      "jobId": 9
    },
    {
      "atMs": 50,
      "kind": "job_started",
      "actor": "worker 4",
      "jobId": 8,
      "workerId": 4
    },
    {
      "atMs": 100,
      "kind": "job_done",
      "actor": "worker 4",
      "jobId": 8,
      "workerId": 4
    },
    {
      "atMs": 100,
      "kind": "job_started",
      "actor": "worker 4",
      "jobId": 9,
      "workerId": 4
    },
    {
      "atMs": 100,
      "kind": "job_queued",
      "actor": "producer",
      "jobId": 9,
      "waitMs": 50
    },
    {
      "atMs": 100,
      "kind": "job_send_attempt",
      "actor": "producer",
      "jobId": 10
    },
    {
      "atMs": 100,
      "kind": "job_done",
      "actor": "worker 1",
      "jobId": 7,
      "workerId": 1
    },
    {
      "atMs": 100,
      "kind": "job_started",
      "actor": "worker 1",
      "jobId": 10,
      "workerId": 1
    },
    {
      "atMs": 100,
      "kind": "job_done",
      "actor": "worker 3",
      "jobId": 6,
      "workerId": 3
    },
    {
      "atMs": 100,
      "kind": "job_done",
      "actor": "worker 2",
      "jobId": 5,
      "workerId": 2
    },
    {
      "atMs": 100,
      "kind": "job_queued",
      "actor": "producer",
      "jobId": 10
    },
    {
      "atMs": 100,
      "kind": "job_send_attempt",
      "actor": "producer",
      "jobId": 11
    },
    {
      "atMs": 100,
      "kind": "job_queued",
      "actor": "producer",
      "jobId": 11
    },
    {
      "atMs": 100,
      "kind": "job_send_attempt",
      "actor": "producer",
      "jobId": 12
    },
    {
      "atMs": 100,
      "kind": "job_queued",
      "actor": "producer",
      "jobId": 12
    },
    {
      "atMs": 100,
      "kind": "job_send_attempt",
      "actor": "producer",
      "jobId": 13
    },
    {
      "atMs": 100,
      "kind": "job_started",
      "actor": "worker 2",
      "jobId": 12,
      "workerId": 2
    },
    {
      "atMs": 100,
      "kind": "job_started",
      "actor": "worker 3",
      "jobId": 11,
      "workerId": 3
    },
    {
      "atMs": 150,
      "kind": "job_done",
      "actor": "worker 3",
      "jobId": 11,
      "workerId": 3
    },
    {
      "atMs": 150,
      "kind": "job_started",
      "actor": "worker 3",
      "jobId": 13,
      "workerId": 3
    },
    {
      "atMs": 150,
      "kind": "job_queued",
      "actor": "producer",
      "jobId": 13,
      "waitMs": 50
    },
    {
      "atMs": 150,
      "kind": "job_send_attempt",
      "actor": "producer",
      "jobId": 14
    },
    {
      "atMs": 150,
      "kind": "job_done",
      "actor": "worker 2",
      "jobId": 12,
      "workerId": 2
    },
    {
      "atMs": 150,
      "kind": "job_started",
      "actor": "worker 2",
      "jobId": 14,
      "workerId": 2
    },
    {
      "atMs": 150,
      "kind": "job_queued",
      "actor": "producer",
      "jobId": 14
    },
    {
      "atMs": 150,
      "kind": "job_send_attempt",
      "actor": "producer",
      "jobId": 15
    },
    {
      "atMs": 150,
      "kind": "job_done",
      "actor": "worker 4",
      "jobId": 9,
      "workerId": 4
    },
    {
      "atMs": 150,
      "kind": "job_started",
      "actor": "worker 4",
      "jobId": 15,
      "workerId": 4
    },
    {
      "atMs": 150,
      "kind": "job_queued",
      "actor": "producer",
      "jobId": 15
    },
    {
      "atMs": 150,
      "kind": "job_send_attempt",
      "actor": "producer",
      "jobId": 16
    },
    {
      "atMs": 150,
      "kind": "job_done",
      "actor": "worker 1",
      "jobId": 10,
      "workerId": 1
    },
    {
      "atMs": 150,
      "kind": "job_started",
      "actor": "worker 1",
      "jobId": 16,
      "workerId": 1
    },
    {
      "atMs": 150,
      "kind": "job_queued",
      "actor": "producer",
      "jobId": 16
    },
    {
      "atMs": 150,
      "kind": "job_send_attempt",
      "actor": "producer",
      "jobId": 17
    },
    {
      "atMs": 201,
      "kind": "job_done",
      "actor": "worker 3",
      "jobId": 13,
      "workerId": 3
    },
    {
      "atMs": 201,
      "kind": "job_started",
      "actor": "worker 3",
      "jobId": 17,
      "workerId": 3
    },
    {
      "atMs": 201,
      "kind": "job_queued",
      "actor": "producer",
      "jobId": 17,
      "waitMs": 50
    },
    {
      "atMs": 201,
      "kind": "job_send_attempt",
      "actor": "producer",
      "jobId": 18
    },
    {
      "atMs": 201,
      "kind": "job_done",
      "actor": "worker 1",
      "jobId": 16,
      "workerId": 1
    },
    {
      "atMs": 201,
      "kind": "job_started",
      "actor": "worker 1",
      "jobId": 18,
      "workerId": 1
    },
    {
      "atMs": 201,
      "kind": "job_queued",
      "actor": "producer",
      "jobId": 18
    },
    {
      "atMs": 201,
      "kind": "job_send_attempt",
      "actor": "producer",
      "jobId": 19
    },
    {
      "atMs": 201,
      "kind": "job_done",
      "actor": "worker 2",
      "jobId": 14,
      "workerId": 2
    },
    {
      "atMs": 201,
      "kind": "job_started",
      "actor": "worker 2",
      "jobId": 19,
      "workerId": 2
    },
    {
      "atMs": 201,
      "kind": "job_queued",
      "actor": "producer",
      "jobId": 19
    },
    {
      "atMs": 201,
      "kind": "job_send_attempt",
      "actor": "producer",
      "jobId": 20
    },
    {
      "atMs": 201,
      "kind": "job_done",
      "actor": "worker 4",
      "jobId": 15,
      "workerId": 4
    },
    {
      "atMs": 201,
      "kind": "job_started",
      "actor": "worker 4",
      "jobId": 20,
      "workerId": 4
    },
    {
      "atMs": 201,
      "kind": "job_queued",
      "actor": "producer",
      "jobId": 20
    },
    {
      "atMs": 201,
      "kind": "jobs_closed",
      "actor": "producer"
    },
    {
      "atMs": 251,
      "kind": "job_done",
      "actor": "worker 3",
      "jobId": 17,
      "workerId": 3
    },
    {
      "atMs": 251,
      "kind": "worker_stop",
      "actor": "worker 3",
      "workerId": 3
    },
    {
      "atMs": 251,
      "kind": "job_done",
      "actor": "worker 1",
      "jobId": 18,
      "workerId": 1
    },
    {
      "atMs": 251,
      "kind": "job_done",
      "actor": "worker 4",
      "jobId": 20,
      "workerId": 4
    },
    {
      "atMs": 251,
      "kind": "worker_stop",
      "actor": "worker 1",
      "workerId": 1
    },
    {
      "atMs": 251,
      "kind": "worker_stop",
      "actor": "worker 4",
      "workerId": 4
    },
    {
      "atMs": 251,
      "kind": "job_done",
      "actor": "worker 2",
      "jobId": 19,
      "workerId": 2
    },
    {
      "atMs": 251,
      "kind": "worker_stop",
      "actor": "worker 2",
      "workerId": 2
    },
    {
      "atMs": 251,
      "kind": "results_closed",
      "actor": "collector"
    }
  ],
  "jobsClosedByProducer": true,
  "resultsClosedAfterWait": true
}
