using System; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; using InfluxDB.Client.Api.Domain; using InfluxDB.Client.Api.Service; using InfluxDB.Client.Core; using InfluxDB.Client.Domain; namespace InfluxDB.Client { public interface IChecksApi { /// /// Add new Threshold check. /// /// the check name /// The text of the flux query /// Check repetition interval /// template that is used to generate and write a status message /// condition for that specific status /// the organization that owns this check /// Cancellation token /// ThresholdCheck created Task CreateThresholdCheckAsync(string name, string query, string every, string messageTemplate, Threshold threshold, string orgId, CancellationToken cancellationToken = default); /// /// Add new Threshold check. /// /// the check name /// The text of the flux query /// Check repetition interval /// template that is used to generate and write a status message /// conditions for that specific status /// the organization that owns this check /// Cancellation token /// ThresholdCheck created Task CreateThresholdCheckAsync(string name, string query, string every, string messageTemplate, List thresholds, string orgId, CancellationToken cancellationToken = default); /// /// Add new Deadman check. /// /// the check name /// The text of the flux query /// Check repetition interval /// string duration before deadman triggers /// string duration for time that a series is considered stale and should not trigger deadman /// template that is used to generate and write a status message /// the state to record if check matches a criteria /// the organization that owns this check /// Cancellation token /// DeadmanCheck created Task CreateDeadmanCheckAsync(string name, string query, string every, string timeSince, string staleTime, string messageTemplate, CheckStatusLevel level, string orgId, CancellationToken cancellationToken = default); /// /// Add new check. /// /// check to create /// Cancellation token /// Check created Task CreateCheckAsync(Check check, CancellationToken cancellationToken = default); /// /// Update a check. /// /// check update to apply /// Cancellation token /// An updated check Task UpdateCheckAsync(Check check, CancellationToken cancellationToken = default); /// /// Update a check. /// /// ID of check /// update to apply /// Cancellation token /// An updated check Task UpdateCheckAsync(string checkId, CheckPatch patch, CancellationToken cancellationToken = default); /// /// Delete a check. /// /// the check to delete /// Cancellation token /// Task DeleteCheckAsync(Check check, CancellationToken cancellationToken = default); /// /// Delete a check. /// /// checkID the ID of check to delete /// Cancellation token /// Task DeleteCheckAsync(string checkId, CancellationToken cancellationToken = default); /// /// Get a check. /// /// ID of check /// Cancellation token /// the check requested Task FindCheckByIdAsync(string checkId, CancellationToken cancellationToken = default); /// /// Get checks. /// /// only show checks belonging to specified organization /// Cancellation token /// A list of checks Task> FindChecksAsync(string orgId, CancellationToken cancellationToken = default); /// /// Get all checks. /// /// only show checks belonging to specified organization /// find options /// Cancellation token /// A list of checks Task FindChecksAsync(string orgId, FindOptions findOptions, CancellationToken cancellationToken = default); /// /// List all labels for a check. /// /// the check /// Cancellation token /// a list of all labels for a check Task> GetLabelsAsync(Check check, CancellationToken cancellationToken = default); /// /// List all labels for a check. /// /// ID of the check /// Cancellation token /// a list of all labels for a check Task> GetLabelsAsync(string checkId, CancellationToken cancellationToken = default); /// /// Add a label to a check. /// /// label to add /// the check /// Cancellation token /// the label was added to the check Task