Documentation ¶
Index ¶
- Variables
- func AggregateMetrics(w http.ResponseWriter, r *http.Request)
- func AppDashboard(conf *config.Config, grafana *grafana.Service) http.HandlerFunc
- func AppDetails(w http.ResponseWriter, r *http.Request)
- func AppMetrics(w http.ResponseWriter, r *http.Request)
- func AppSpans(w http.ResponseWriter, r *http.Request)
- func AppTraces(w http.ResponseWriter, r *http.Request)
- func Authenticate(conf *config.Config, authController authentication.AuthController) http.HandlerFunc
- func AuthenticationInfo(conf *config.Config, authController authentication.AuthController, ...) http.HandlerFunc
- func ClustersApps(w http.ResponseWriter, r *http.Request)
- func ClustersHealth(w http.ResponseWriter, r *http.Request)
- func ClustersMetrics(promSupplier promClientSupplier, discovery remoteClusterIdentifier) http.HandlerFunc
- func ClustersServices(w http.ResponseWriter, r *http.Request)
- func ClustersTls(w http.ResponseWriter, r *http.Request)
- func ClustersWorkloads(w http.ResponseWriter, r *http.Request)
- func Config(conf *config.Config, discovery *istio.Discovery) http.HandlerFunc
- func ConfigDump(w http.ResponseWriter, r *http.Request)
- func ConfigDumpResourceEntries(w http.ResponseWriter, r *http.Request)
- func ConfigValidationSummary(w http.ResponseWriter, r *http.Request)
- func CrippledFeatures(w http.ResponseWriter, r *http.Request)
- func CustomDashboard(conf *config.Config, grafana *grafana.Service) http.HandlerFunc
- func ErrorTraces(w http.ResponseWriter, r *http.Request)
- func GetGrafanaInfo(conf *config.Config, grafanaService *grafana.Service) http.HandlerFunc
- func GetOldestNamespace(namespaces []models.Namespace) *models.Namespace
- func GetTracingInfo(w http.ResponseWriter, r *http.Request)
- func GraphNamespaces(conf *config.Config, kialiCache cache.KialiCache, ...) http.HandlerFunc
- func GraphNode(conf *config.Config, kialiCache cache.KialiCache, ...) http.HandlerFunc
- func Healthz(w http.ResponseWriter, r *http.Request)
- func IstioCerts(w http.ResponseWriter, r *http.Request)
- func IstioConfigCreate(w http.ResponseWriter, r *http.Request)
- func IstioConfigDelete(w http.ResponseWriter, r *http.Request)
- func IstioConfigDetails(w http.ResponseWriter, r *http.Request)
- func IstioConfigList(w http.ResponseWriter, r *http.Request)
- func IstioConfigPermissions(w http.ResponseWriter, r *http.Request)
- func IstioConfigUpdate(w http.ResponseWriter, r *http.Request)
- func IstioStatus(w http.ResponseWriter, r *http.Request)
- func IstiodCanariesStatus(w http.ResponseWriter, r *http.Request)
- func LoggingUpdate(w http.ResponseWriter, r *http.Request)
- func Logout(conf *config.Config, authController authentication.AuthController) http.HandlerFunc
- func MeshGraph(conf *config.Config, clientFactory kubernetes.ClientFactory, ...) http.HandlerFunc
- func MeshTls(w http.ResponseWriter, r *http.Request)
- func MetricsStats(w http.ResponseWriter, r *http.Request)
- func NamespaceInfo(w http.ResponseWriter, r *http.Request)
- func NamespaceList(w http.ResponseWriter, r *http.Request)
- func NamespaceMetrics(promSupplier promClientSupplier, discovery remoteClusterIdentifier) http.HandlerFunc
- func NamespaceTls(w http.ResponseWriter, r *http.Request)
- func NamespaceUpdate(w http.ResponseWriter, r *http.Request)
- func NamespaceValidationSummary(discovery *istio.Discovery) http.HandlerFunc
- func PodDetails(w http.ResponseWriter, r *http.Request)
- func PodLogs(w http.ResponseWriter, r *http.Request)
- func RespondWithAPIResponse(w http.ResponseWriter, code int, payload ResponseConverter)
- func RespondWithCode(w http.ResponseWriter, code int)
- func RespondWithDetailedError(w http.ResponseWriter, code int, message, detail string)
- func RespondWithError(w http.ResponseWriter, code int, message string)
- func RespondWithJSON(w http.ResponseWriter, code int, payload interface{})
- func RespondWithJSONIndent(w http.ResponseWriter, code int, payload interface{})
- func Root(conf *config.Config, clientFactory kubernetes.ClientFactory, ...) http.HandlerFunc
- func ServiceDashboard(conf *config.Config, grafana *grafana.Service) http.HandlerFunc
- func ServiceDetails(w http.ResponseWriter, r *http.Request)
- func ServiceMetrics(w http.ResponseWriter, r *http.Request)
- func ServiceSpans(w http.ResponseWriter, r *http.Request)
- func ServiceTraces(w http.ResponseWriter, r *http.Request)
- func ServiceUpdate(w http.ResponseWriter, r *http.Request)
- func TraceDetails(w http.ResponseWriter, r *http.Request)
- func WithAuthInfo(authInfo map[string]*api.AuthInfo, hf http.HandlerFunc) http.HandlerFunc
- func WorkloadDashboard(conf *config.Config, grafana *grafana.Service) http.HandlerFunc
- func WorkloadDetails(w http.ResponseWriter, r *http.Request)
- func WorkloadMetrics(w http.ResponseWriter, r *http.Request)
- func WorkloadSpans(w http.ResponseWriter, r *http.Request)
- func WorkloadTraces(w http.ResponseWriter, r *http.Request)
- func WorkloadUpdate(w http.ResponseWriter, r *http.Request)
- type AuthInfo
- type AuthenticationHandler
- type DeploymentConfig
- type IstioAnnotations
- type IstioCanaryRevision
- type KialiCrippledFeatures
- type PrometheusConfig
- type PrometheusPartialConfig
- type PublicConfig
- type ResponseConverter
Constants ¶
This section is empty.
Variables ¶
var DefaultPromClientSupplier = prometheus.NewClient
Functions ¶
func AggregateMetrics ¶ added in v1.21.0
func AggregateMetrics(w http.ResponseWriter, r *http.Request)
AggregateMetrics is the API handler to fetch metrics to be displayed, related to a single aggregate
func AppDashboard ¶ added in v0.12.0
AppDashboard is the API handler to fetch Istio dashboard, related to a single app
func AppDetails ¶ added in v0.7.0
func AppDetails(w http.ResponseWriter, r *http.Request)
AppDetails is the API handler to fetch all details to be displayed, related to a single app
func AppMetrics ¶ added in v0.6.0
func AppMetrics(w http.ResponseWriter, r *http.Request)
AppMetrics is the API handler to fetch metrics to be displayed, related to an app-label grouping
func AppSpans ¶ added in v1.22.1
func AppSpans(w http.ResponseWriter, r *http.Request)
AppSpans is the API handler to fetch Tracing spans of a specific app
func Authenticate ¶ added in v0.16.0
func Authenticate(conf *config.Config, authController authentication.AuthController) http.HandlerFunc
func AuthenticationInfo ¶ added in v0.16.0
func AuthenticationInfo(conf *config.Config, authController authentication.AuthController, clusters []string) http.HandlerFunc
func ClustersApps ¶ added in v1.82.1
func ClustersApps(w http.ResponseWriter, r *http.Request)
ClustersApps is the API handler to fetch all the apps to be displayed, related to a single cluster
func ClustersHealth ¶ added in v1.82.0
func ClustersHealth(w http.ResponseWriter, r *http.Request)
ClustersHealth is the API handler to get app-based health of every services from namespaces in the given cluster
func ClustersMetrics ¶ added in v1.81.0
func ClustersMetrics(promSupplier promClientSupplier, discovery remoteClusterIdentifier) http.HandlerFunc
ClustersMetrics is the API handler to fetch metrics to be displayed, related to all services in provided namespaces of given cluster
func ClustersServices ¶ added in v1.83.0
func ClustersServices(w http.ResponseWriter, r *http.Request)
ClustersServices is the API handler to fetch the list of services from a given cluster
func ClustersTls ¶ added in v1.81.0
func ClustersTls(w http.ResponseWriter, r *http.Request)
ClustersTls is the API to get mTLS status for given namespaces within a single cluster
func ClustersWorkloads ¶ added in v1.83.0
func ClustersWorkloads(w http.ResponseWriter, r *http.Request)
ClustersWorkloads is the API handler to fetch all the workloads to be displayed, related to a single namespace
func Config ¶ added in v0.10.0
Config is a REST http.HandlerFunc serving up the Kiali configuration made public to clients.
func ConfigDump ¶ added in v1.28.0
func ConfigDump(w http.ResponseWriter, r *http.Request)
func ConfigDumpResourceEntries ¶ added in v1.28.0
func ConfigDumpResourceEntries(w http.ResponseWriter, r *http.Request)
func ConfigValidationSummary ¶ added in v1.53.0
func ConfigValidationSummary(w http.ResponseWriter, r *http.Request)
ConfigValidationSummary is the API handler to fetch validations summary to be displayed. It is related to all the Istio Objects within given namespaces
func CrippledFeatures ¶ added in v1.55.0
func CrippledFeatures(w http.ResponseWriter, r *http.Request)
func CustomDashboard ¶ added in v0.12.0
CustomDashboard is the API handler to fetch runtime metrics to be displayed, related to a single app
func ErrorTraces ¶ added in v1.14.0
func ErrorTraces(w http.ResponseWriter, r *http.Request)
func GetGrafanaInfo ¶
GetGrafanaInfo provides the Grafana URL and other info, first by checking if a config exists then (if not) by inspecting the Kubernetes Grafana service in Istio installation namespace
func GetOldestNamespace ¶ added in v1.72.0
GetOldestNamespace is a convenience function that takes a list of Namespaces and returns the Namespace with the oldest CreationTimestamp. In a tie, preference is towards the head of the list.
func GetTracingInfo ¶ added in v1.75.0
func GetTracingInfo(w http.ResponseWriter, r *http.Request)
Get TracingInfo provides the Tracing URL and other info
func GraphNamespaces ¶ added in v0.10.0
func GraphNamespaces( conf *config.Config, kialiCache cache.KialiCache, clientFactory kubernetes.ClientFactory, prom prometheus.ClientInterface, cpm business.ControlPlaneMonitor, traceClientLoader func() tracing.ClientInterface, grafana *grafana.Service, discovery *istio.Discovery, ) http.HandlerFunc
func GraphNode ¶ added in v0.8.0
func GraphNode( conf *config.Config, kialiCache cache.KialiCache, clientFactory kubernetes.ClientFactory, prom prometheus.ClientInterface, cpm business.ControlPlaneMonitor, traceClientLoader func() tracing.ClientInterface, grafana *grafana.Service, discovery *istio.Discovery, ) http.HandlerFunc
GraphNode is a REST http.HandlerFunc handling node-detail graph config generation.
func Healthz ¶ added in v0.17.0
func Healthz(w http.ResponseWriter, r *http.Request)
Healthz is a trivial endpoint that simply returns a 200 status code with no response body. This is to simply confirm the readiness of the server. You can use this for readiness and liveness probes.
func IstioCerts ¶ added in v1.40.0
func IstioCerts(w http.ResponseWriter, r *http.Request)
IstioCerts returns information about internal certificates used by Istio
func IstioConfigCreate ¶ added in v0.14.0
func IstioConfigCreate(w http.ResponseWriter, r *http.Request)
func IstioConfigDelete ¶ added in v0.9.1
func IstioConfigDelete(w http.ResponseWriter, r *http.Request)
func IstioConfigDetails ¶
func IstioConfigDetails(w http.ResponseWriter, r *http.Request)
func IstioConfigList ¶
func IstioConfigList(w http.ResponseWriter, r *http.Request)
func IstioConfigPermissions ¶ added in v1.13.0
func IstioConfigPermissions(w http.ResponseWriter, r *http.Request)
func IstioConfigUpdate ¶ added in v0.12.0
func IstioConfigUpdate(w http.ResponseWriter, r *http.Request)
func IstioStatus ¶ added in v1.18.0
func IstioStatus(w http.ResponseWriter, r *http.Request)
IstioStatus returns a list of istio components and its status
func IstiodCanariesStatus ¶ added in v1.60.0
func IstiodCanariesStatus(w http.ResponseWriter, r *http.Request)
func LoggingUpdate ¶ added in v1.41.0
func LoggingUpdate(w http.ResponseWriter, r *http.Request)
func Logout ¶ added in v0.16.0
func Logout(conf *config.Config, authController authentication.AuthController) http.HandlerFunc
func MeshGraph ¶ added in v1.81.0
func MeshGraph( conf *config.Config, clientFactory kubernetes.ClientFactory, cache cache.KialiCache, grafana *grafana.Service, prom prometheus.ClientInterface, traceClientLoader func() tracing.ClientInterface, discovery *istio.Discovery, cpm business.ControlPlaneMonitor, ) http.HandlerFunc
MeshGraph is a REST http.HandlerFunc handling graph generation for the mesh
func MeshTls ¶ added in v0.21.0
func MeshTls(w http.ResponseWriter, r *http.Request)
MeshTls is the API to get mesh-wide mTLS status
func MetricsStats ¶ added in v1.27.0
func MetricsStats(w http.ResponseWriter, r *http.Request)
MetricsStats is the API handler to compute some stats based on metrics
func NamespaceInfo ¶ added in v1.84.0
func NamespaceInfo(w http.ResponseWriter, r *http.Request)
func NamespaceList ¶
func NamespaceList(w http.ResponseWriter, r *http.Request)
func NamespaceMetrics ¶
func NamespaceMetrics(promSupplier promClientSupplier, discovery remoteClusterIdentifier) http.HandlerFunc
NamespaceMetrics is the API handler to fetch metrics to be displayed, related to all services in the namespace
func NamespaceTls ¶ added in v0.16.0
func NamespaceTls(w http.ResponseWriter, r *http.Request)
NamespaceTls is the API to get namespace-wide mTLS status
func NamespaceUpdate ¶ added in v1.22.1
func NamespaceUpdate(w http.ResponseWriter, r *http.Request)
NamespaceUpdate is the API to perform a patch on a Namespace configuration
func NamespaceValidationSummary ¶ added in v1.10.0
func NamespaceValidationSummary(discovery *istio.Discovery) http.HandlerFunc
NamespaceValidationSummary is the API handler to fetch validations summary to be displayed. It is related to all the Istio Objects within the namespace
func PodDetails ¶ added in v0.18.0
func PodDetails(w http.ResponseWriter, r *http.Request)
PodDetails is the API handler to fetch all details to be displayed, related to a single pod
func PodLogs ¶ added in v0.18.0
func PodLogs(w http.ResponseWriter, r *http.Request)
PodLogs is the API handler to fetch logs for a single pod container
func RespondWithAPIResponse ¶ added in v1.82.0
func RespondWithAPIResponse(w http.ResponseWriter, code int, payload ResponseConverter)
func RespondWithCode ¶ added in v0.14.0
func RespondWithCode(w http.ResponseWriter, code int)
func RespondWithDetailedError ¶ added in v1.3.0
func RespondWithDetailedError(w http.ResponseWriter, code int, message, detail string)
func RespondWithError ¶
func RespondWithError(w http.ResponseWriter, code int, message string)
func RespondWithJSON ¶
func RespondWithJSON(w http.ResponseWriter, code int, payload interface{})
func RespondWithJSONIndent ¶
func RespondWithJSONIndent(w http.ResponseWriter, code int, payload interface{})
func Root ¶
func Root(conf *config.Config, clientFactory kubernetes.ClientFactory, cache cache.KialiCache, grafana *grafana.Service) http.HandlerFunc
Root provides basic status of the server.
func ServiceDashboard ¶ added in v0.12.0
ServiceDashboard is the API handler to fetch Istio dashboard, related to a single service
func ServiceDetails ¶
func ServiceDetails(w http.ResponseWriter, r *http.Request)
ServiceDetails is the API handler to fetch full details of an specific service
func ServiceMetrics ¶
func ServiceMetrics(w http.ResponseWriter, r *http.Request)
ServiceMetrics is the API handler to fetch metrics to be displayed, related to a single service
func ServiceSpans ¶ added in v1.12.0
func ServiceSpans(w http.ResponseWriter, r *http.Request)
ServiceSpans is the API handler to fetch Tracing spans of a specific service
func ServiceTraces ¶ added in v1.24.0
func ServiceTraces(w http.ResponseWriter, r *http.Request)
func ServiceUpdate ¶ added in v1.30.0
func ServiceUpdate(w http.ResponseWriter, r *http.Request)
func TraceDetails ¶ added in v1.11.0
func TraceDetails(w http.ResponseWriter, r *http.Request)
func WithAuthInfo ¶ added in v1.73.0
func WithAuthInfo(authInfo map[string]*api.AuthInfo, hf http.HandlerFunc) http.HandlerFunc
WithAuthInfo injects the given auth info into the request context of the given handler. Useful for testing only.
func WorkloadDashboard ¶ added in v0.12.0
WorkloadDashboard is the API handler to fetch Istio dashboard, related to a single workload
func WorkloadDetails ¶ added in v0.6.0
func WorkloadDetails(w http.ResponseWriter, r *http.Request)
WorkloadDetails is the API handler to fetch all details to be displayed, related to a single workload
func WorkloadMetrics ¶ added in v0.6.0
func WorkloadMetrics(w http.ResponseWriter, r *http.Request)
WorkloadMetrics is the API handler to fetch metrics to be displayed, related to a single workload
func WorkloadSpans ¶ added in v1.24.0
func WorkloadSpans(w http.ResponseWriter, r *http.Request)
WorkloadSpans is the API handler to fetch Tracing spans of a specific workload
func WorkloadTraces ¶ added in v1.24.0
func WorkloadTraces(w http.ResponseWriter, r *http.Request)
func WorkloadUpdate ¶ added in v1.22.0
func WorkloadUpdate(w http.ResponseWriter, r *http.Request)
WorkloadUpdate is the API to perform a patch on a Workload configuration
Types ¶
type AuthInfo ¶ added in v0.16.0
type AuthInfo struct { Strategy string `json:"strategy"` AuthorizationEndpoint string `json:"authorizationEndpoint,omitempty"` AuthorizationEndpointPerCluster map[string]string `json:"authorizationEndpointPerCluster,omitempty"` LogoutEndpoint string `json:"logoutEndpoint,omitempty"` LogoutRedirect string `json:"logoutRedirect,omitempty"` SessionInfo sessionInfo `json:"sessionInfo"` SecretMissing bool `json:"secretMissing,omitempty"` }
type AuthenticationHandler ¶ added in v0.16.0
type AuthenticationHandler struct {
// contains filtered or unexported fields
}
func NewAuthenticationHandler ¶ added in v0.16.0
func NewAuthenticationHandler( conf *config.Config, authController authentication.AuthController, homeClusterSAClient kubernetes.ClientInterface, authRedirectHandler http.Handler, kialiSAClients map[string]kubernetes.ClientInterface, ) AuthenticationHandler
func (*AuthenticationHandler) Handle ¶ added in v0.16.0
func (aHandler *AuthenticationHandler) Handle(next http.Handler) http.Handler
func (*AuthenticationHandler) HandleUnauthenticated ¶ added in v0.16.0
func (aHandler *AuthenticationHandler) HandleUnauthenticated(next http.Handler) http.Handler
type DeploymentConfig ¶ added in v1.36.5
type DeploymentConfig struct {
ViewOnlyMode bool `json:"viewOnlyMode,omitempty"`
}
type IstioAnnotations ¶ added in v1.23.0
type IstioCanaryRevision ¶ added in v1.37.0
type KialiCrippledFeatures ¶ added in v1.55.0
type KialiCrippledFeatures struct { RequestSize bool `json:"requestSize"` RequestSizeAverage bool `json:"requestSizeAverage"` RequestSizePercentiles bool `json:"requestSizePercentiles"` ResponseSize bool `json:"responseSize"` ResponseSizeAverage bool `json:"responseSizeAverage"` ResponseSizePercentiles bool `json:"responseSizePercentiles"` ResponseTime bool `json:"responseTime"` ResponseTimeAverage bool `json:"responseTimeAverage"` ResponseTimePercentiles bool `json:"responseTimePercentiles"` }
type PrometheusConfig ¶ added in v0.15.0
type PrometheusConfig struct { GlobalScrapeInterval int64 `json:"globalScrapeInterval,omitempty"` StorageTsdbRetention int64 `json:"storageTsdbRetention,omitempty"` }
PrometheusConfig holds actual Prometheus configuration that is useful to Kiali. All durations are in seconds.
type PrometheusPartialConfig ¶ added in v0.15.0
type PrometheusPartialConfig struct { Global struct { Scrape_interval string } }
type PublicConfig ¶ added in v0.10.0
type PublicConfig struct { AccessibleNamespaces []string `json:"accessibleNamespaces,omitempty"` AuthStrategy string `json:"authStrategy,omitempty"` AmbientEnabled bool `json:"ambientEnabled,omitempty"` Clusters map[string]models.KubeCluster `json:"clusters,omitempty"` Deployment DeploymentConfig `json:"deployment,omitempty"` GatewayAPIClasses []config.GatewayAPIClass `json:"gatewayAPIClasses,omitempty"` GatewayAPIEnabled bool `json:"gatewayAPIEnabled,omitempty"` HealthConfig config.HealthConfig `json:"healthConfig,omitempty"` InstallationTag string `json:"installationTag,omitempty"` IstioAnnotations IstioAnnotations `json:"istioAnnotations,omitempty"` IstioCanaryRevision IstioCanaryRevision `json:"istioCanaryRevision,omitempty"` IstioConfigMap string `json:"istioConfigMap"` IstioIdentityDomain string `json:"istioIdentityDomain,omitempty"` IstioLabels config.IstioLabels `json:"istioLabels,omitempty"` IstioNamespace string `json:"istioNamespace,omitempty"` IstioStatusEnabled bool `json:"istioStatusEnabled,omitempty"` KialiFeatureFlags config.KialiFeatureFlags `json:"kialiFeatureFlags,omitempty"` LogLevel string `json:"logLevel,omitempty"` Prometheus PrometheusConfig `json:"prometheus,omitempty"` }
PublicConfig is a subset of Kiali configuration that can be exposed to clients to help them interact with the system.
type ResponseConverter ¶ added in v1.82.0
type ResponseConverter interface {
ConvertToResponse()
}
ResponseConverter can do some last minute changes to itself before being marshaled to JSON. This is useful for things like converting nil slices to empty slices because the frontend expects an empty array instead of null in the response.