Skip to content
144 changes: 108 additions & 36 deletions Package.resolved

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

10 changes: 6 additions & 4 deletions Package.swift
Original file line number Diff line number Diff line change
Expand Up @@ -13,15 +13,17 @@ let package = Package(
],
dependencies: [
.package(url: "https://github.com/vapor/queues.git", from: "1.5.0"),
.package(url: "https://github.com/vapor/fluent-kit.git", from: "1.7.0"),
.package(url: "https://github.com/vapor/sql-kit.git", from: "3.7.0")
.package(url: "https://github.com/vapor/fluent.git", from: "4.0.0"),
.package(url: "https://github.com/vapor/fluent-mysql-driver.git", from: "4.0.0"),
.package(url: "https://github.com/vapor/fluent-postgres-driver.git", from: "2.0.0")
],
targets: [
.target(
name: "QueuesDatabaseHooks",
dependencies: [
.product(name: "FluentKit", package: "fluent-kit"),
.product(name: "SQLKit", package: "sql-kit"),
.product(name: "Fluent", package: "fluent"),
.product(name: "FluentPostgresDriver", package: "fluent-postgres-driver"),
.product(name: "FluentMySQLDriver", package: "fluent-mysql-driver"),
.product(name: "Queues", package: "queues")
]),
.testTarget(
Expand Down
18 changes: 18 additions & 0 deletions Sources/QueuesDatabaseHooks/Model/CompletedJobStatusResponse.swift
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
//
// CompletedJobStatusResponse.swift
//
//
// Created by lgriffie on 05/09/2021.
//

import Foundation
import Vapor

/// Data about jobs that have run successfully over a time period
public struct CompletedJobStatusResponse: Content {
/// The number of jobs that completed successfully
public let completedJobs: Int

/// The percent of jobs (out of all jobs run in the time period) that ran successfully
public let percentSuccess: Double
}
18 changes: 18 additions & 0 deletions Sources/QueuesDatabaseHooks/Model/CurrentJobsStatusResponse.swift
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
//
// CurrentJobsStatusResponse.swift
//
//
// Created by lgriffie on 05/09/2021.
//

import Foundation
import Vapor

/// Data about jobs currently queued or running
public struct CurrentJobsStatusResponse: Content {
/// The number of queueud jobs currently waiting to be run
public let queuedCount: Int

/// The number of jobs currently running
public let runningCount: Int
}
18 changes: 18 additions & 0 deletions Sources/QueuesDatabaseHooks/Model/JobsTimingResponse.swift
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
//
// JobsTimingResponse.swift
//
//
// Created by lgriffie on 05/09/2021.
//

import Foundation
import Vapor

/// Data about how long jobs are taking to run
public struct JobsTimingResponse: Content {
/// The average time spent running a job
public let avgRunTime: Double?

/// The average time jobs spent waiting to be processed
public let avgWaitTime: Double?
}
Loading