Documentation
¶
Index ¶
- Constants
- Variables
- func MustCSMClientAccessTimeline(ctx context.Context, clusterName string, podNamespace string, podName string) *khifilev6.TimelinePath
- func MustCSMServerAccessTimeline(ctx context.Context, clusterName string, podNamespace string, podName string, ...) *khifilev6.TimelinePath
- func MustCSMServiceClientAccessTimeline(ctx context.Context, clusterName string, serviceNamespace string, ...) *khifilev6.TimelinePath
- func MustCSMServiceServerAccessTimeline(ctx context.Context, clusterName string, serviceNamespace string, ...) *khifilev6.TimelinePath
- type AccessLogType
- type IstioAccessLogFieldSet
Constants ¶
const TaskIDPrefix = "cloud.google.com/log/csm-trafficlog/"
Variables ¶
var CSMClusterIdentifierTaskID = taskid.NewDefaultImplementationID[[]string](TaskIDPrefix + "cluster-identifier")
CSMClusterIdentifierTaskID is the task ID for the unique cluster identifier(s) extracted from BackendService names.
var CSMTrafficDirectorLogGrouperTaskID = taskid.NewDefaultImplementationID[inspectiontaskbase.LogGroupMap](TaskIDPrefix + "traffic-director/grouper")
CSMTrafficDirectorLogGrouperTaskID is the task ID to group CSM Traffic Director logs.
var CSMTrafficDirectorLogIngesterTaskID = taskid.NewDefaultImplementationID[struct{}](TaskIDPrefix + "traffic-director/log-ingester")
CSMTrafficDirectorLogIngesterTaskID is the task ID to finalize the CSM Traffic Director logs.
var CSMTrafficDirectorLogToTimelineMapperTaskID = taskid.NewDefaultImplementationID[inspectiontaskbase.TimelineMapperResult](TaskIDPrefix + "traffic-director/timeline-mapper")
CSMTrafficDirectorLogToTimelineMapperTaskID is the task ID for associating CSM Traffic Director logs with resource timelines.
var ClusterIdentityTaskID = taskid.NewDefaultImplementationID[googlecloudk8scommon_contract.GoogleCloudClusterIdentity](TaskIDPrefix + "cluster-identity")
ClusterIdentityTaskID is the task id for aliasing the cluster identity.
var InputCSMResponseFlagsTaskID = taskid.NewDefaultImplementationID[*gcpqueryutil.SetFilterParseResult](TaskIDPrefix + "input/response-flags")
InputCSMResponseFlagsTaskID is the task ID for the form input that specifies which Envoy response flags to filter CSM traffic logs by.
var InputFleetProjectIDTaskID = taskid.NewDefaultImplementationID[string](TaskIDPrefix + "input/fleet-project-id")
InputFleetProjectIDTaskID is the task ID for the form input that specifies the Fleet Project ID where CSM control plane logs are stored.
var ListCSMTrafficDirectorLogEntriesTaskID = taskid.NewDefaultImplementationID[[]*log.Log](TaskIDPrefix + "list-traffic-director-log-entries")
ListCSMTrafficDirectorLogEntriesTaskID is the task ID for the task that queries CSM Traffic Director logs from Cloud Logging.
var ListLogEntriesTaskID = taskid.NewDefaultImplementationID[[]*log.Log](TaskIDPrefix + "list-log-entries")
ListLogEntriesTaskID is the task ID for the task that queries CSM traffic logs from Cloud Logging.
var LogGrouperTaskID = taskid.NewDefaultImplementationID[inspectiontaskbase.LogGroupMap](TaskIDPrefix + "grouper")
LogGrouperTaskID is the task ID to group CSM traffic logs by their reporter pod for parallel processing.
var LogIngesterTaskID = taskid.NewDefaultImplementationID[struct{}](TaskIDPrefix + "log-ingester")
LogIngesterTaskID is the task id to finalize the logs to be included in the final output.
var LogToTimelineMapperTaskID = taskid.NewDefaultImplementationID[inspectiontaskbase.TimelineMapperResult](TaskIDPrefix + "timeline-mapper")
LogToTimelineMapperTaskID is the task ID for associating CSM traffic log events with resource timelines.
var (
LogTypeCSMTrafficLog = style.MustRegisterLogType("CSM traffic", "Cloud Service Mesh Traffic Logs", style.MustForceConvertSRGBHex("#FF8500"), style.ColorWhite)
)
The following block defines the registered timeline style LogTypes. These are registered as package-level variables so they are initialized immediately when this package is imported.
var ( TimelineTypeCSMTrafficLog = style.MustRegisterTimelineType( "csm", "CSM Traffic logs related to this resource", "shuffle", 0.6, style.ColorWhite, style.ColorBlack, style.MustForceConvertSRGBHex("#FF8500"), style.ColorWhite, true, 5001, style.AlphabeticalSortPolicy(), ) )
The following block defines the registered timeline style TimelineTypes. These are registered as package-level variables so they are initialized immediately when this package is imported.
Functions ¶
func MustCSMClientAccessTimeline ¶ added in v0.56.0
func MustCSMClientAccessTimeline(ctx context.Context, clusterName string, podNamespace string, podName string) *khifilev6.TimelinePath
MustCSMClientAccessTimeline returns the timeline path for CSM Client Access under a Pod.
func MustCSMServerAccessTimeline ¶ added in v0.56.0
func MustCSMServerAccessTimeline(ctx context.Context, clusterName string, podNamespace string, podName string, containerName string) *khifilev6.TimelinePath
MustCSMServerAccessTimeline returns the timeline path for CSM Server Access under a Pod.
func MustCSMServiceClientAccessTimeline ¶ added in v0.56.0
func MustCSMServiceClientAccessTimeline(ctx context.Context, clusterName string, serviceNamespace string, serviceName string) *khifilev6.TimelinePath
MustCSMServiceClientAccessTimeline returns the timeline path for CSM Service Client Access.
func MustCSMServiceServerAccessTimeline ¶ added in v0.56.0
func MustCSMServiceServerAccessTimeline(ctx context.Context, clusterName string, serviceNamespace string, serviceName string) *khifilev6.TimelinePath
MustCSMServiceServerAccessTimeline returns the timeline path for CSM Service Server Access.
Types ¶
type AccessLogType ¶
type AccessLogType string
const ( AccessLogTypeClient AccessLogType = "client" AccessLogTypeServer AccessLogType = "server" )
type IstioAccessLogFieldSet ¶
type IstioAccessLogFieldSet struct {
Type AccessLogType
ResponseFlags logutil.EnvoyResponseFlags
SourceNamespace string
SourceName string
DestinationNamespace string
DestinationName string
DestinationServiceName string
DestinationServiceNamespace string
ReporterPodName string
ReporterPodNamespace string
ReporterContainerName string
}
IstioAccessLogFieldSet holds structured fields for Istio access logs.
func ExtractIstioAccessLog ¶ added in v0.58.2
func ExtractIstioAccessLog(reader *structured.NodeReader) (IstioAccessLogFieldSet, error)
ExtractIstioAccessLog extracts Istio access log fields from a NodeReader.