import { IComGithubGrafanaAgentPkgOperatorApisMonitoringV1alpha1LogsBackoffConfigSpec } from "./LogsBackoffConfigSpec.js"; import { IComGithubPrometheusOperatorPrometheusOperatorPkgApisMonitoringV1BasicAuth } from "../../monitoring.coreos.com/v1/BasicAuth.js"; import { IComGithubPrometheusOperatorPrometheusOperatorPkgApisMonitoringV1OAuth2 } from "../../monitoring.coreos.com/v1/OAuth2.js"; import { IComGithubPrometheusOperatorPrometheusOperatorPkgApisMonitoringV1TLSConfig } from "../../monitoring.coreos.com/v1/TLSConfig.js"; import { ModelData, Model } from "@kubernetes-models/base"; /** * LogsClientSpec defines the client integration for logs, indicating which * Loki server to send logs to. */ export interface ILogsClientSpec { /** * Configures how to retry requests to Loki when a request fails. * Defaults to a minPeriod of 500ms, maxPeriod of 5m, and maxRetries of 10. */ "backoffConfig"?: IComGithubGrafanaAgentPkgOperatorApisMonitoringV1alpha1LogsBackoffConfigSpec; /** * BasicAuth for the Loki server. */ "basicAuth"?: IComGithubPrometheusOperatorPrometheusOperatorPkgApisMonitoringV1BasicAuth; /** * Maximum batch size (in bytes) of logs to accumulate before sending the * batch to Loki. */ "batchSize"?: number; /** * Maximum amount of time to wait before sending a batch, even if that batch * isn't full. */ "batchWait"?: string; /** * BearerToken used for remote_write. */ "bearerToken"?: string; /** * BearerTokenFile used to read bearer token. */ "bearerTokenFile"?: string; /** * ExternalLabels are labels to add to any time series when sending data to * Loki. */ "externalLabels"?: { [key: string]: string; }; /** * Oauth2 for URL */ "oauth2"?: IComGithubPrometheusOperatorPrometheusOperatorPkgApisMonitoringV1OAuth2; /** * ProxyURL to proxy requests through. Optional. */ "proxyUrl"?: string; /** * Tenant ID used by default to push logs to Loki. If omitted assumes remote * Loki is running in single-tenant mode or an authentication layer is used * to inject an X-Scope-OrgID header. */ "tenantId"?: string; /** * Maximum time to wait for a server to respond to a request. */ "timeout"?: string; /** * TLSConfig to use for the client. Only used when the protocol of the URL * is https. */ "tlsConfig"?: IComGithubPrometheusOperatorPrometheusOperatorPkgApisMonitoringV1TLSConfig; /** * URL is the URL where Loki is listening. Must be a full HTTP URL, including * protocol. Required. * Example: https://logs-prod-us-central1.grafana.net/loki/api/v1/push. */ "url": string; } /** * LogsClientSpec defines the client integration for logs, indicating which * Loki server to send logs to. */ export declare class LogsClientSpec extends Model implements ILogsClientSpec { "backoffConfig"?: IComGithubGrafanaAgentPkgOperatorApisMonitoringV1alpha1LogsBackoffConfigSpec; "basicAuth"?: IComGithubPrometheusOperatorPrometheusOperatorPkgApisMonitoringV1BasicAuth; "batchSize"?: number; "batchWait"?: string; "bearerToken"?: string; "bearerTokenFile"?: string; "externalLabels"?: { [key: string]: string; }; "oauth2"?: IComGithubPrometheusOperatorPrometheusOperatorPkgApisMonitoringV1OAuth2; "proxyUrl"?: string; "tenantId"?: string; "timeout"?: string; "tlsConfig"?: IComGithubPrometheusOperatorPrometheusOperatorPkgApisMonitoringV1TLSConfig; "url": string; constructor(data?: ModelData); } export type { ILogsClientSpec as IComGithubGrafanaAgentPkgOperatorApisMonitoringV1alpha1LogsClientSpec, LogsClientSpec as ComGithubGrafanaAgentPkgOperatorApisMonitoringV1alpha1LogsClientSpec };