github.com/yankunsam/loki/v2@v2.6.3-0.20220817130409-389df5235c27/clients/pkg/promtail/targets/cloudflare/fields.go (about) 1 package cloudflare 2 3 import ( 4 "fmt" 5 ) 6 7 type FieldsType string 8 9 const ( 10 FieldsTypeDefault FieldsType = "default" 11 FieldsTypeMinimal FieldsType = "minimal" 12 FieldsTypeExtended FieldsType = "extended" 13 FieldsTypeAll FieldsType = "all" 14 ) 15 16 var ( 17 defaultFields = []string{ 18 "ClientIP", "ClientRequestHost", "ClientRequestMethod", "ClientRequestURI", "EdgeEndTimestamp", "EdgeResponseBytes", 19 "EdgeRequestHost", "EdgeResponseStatus", "EdgeStartTimestamp", "RayID", 20 } 21 minimalFields = append(defaultFields, []string{ 22 "ZoneID", "ClientSSLProtocol", "ClientRequestProtocol", "ClientRequestPath", "ClientRequestUserAgent", "ClientRequestReferer", 23 "EdgeColoCode", "ClientCountry", "CacheCacheStatus", "CacheResponseStatus", "EdgeResponseContentType", "SecurityLevel", 24 "WAFAction", "WAFProfile", "WAFRuleID", "WAFRuleMessage", "EdgeRateLimitID", "EdgeRateLimitAction", 25 }...) 26 extendedFields = append(minimalFields, []string{ 27 "ClientSSLCipher", "ClientASN", "ClientIPClass", "CacheResponseBytes", "EdgePathingOp", "EdgePathingSrc", "EdgePathingStatus", "ParentRayID", 28 "WorkerCPUTime", "WorkerStatus", "WorkerSubrequest", "WorkerSubrequestCount", "OriginIP", "OriginResponseStatus", "OriginSSLProtocol", 29 "OriginResponseHTTPExpires", "OriginResponseHTTPLastModified", 30 }...) 31 allFields = append(extendedFields, []string{ 32 "BotScore", "BotScoreSrc", "ClientRequestBytes", "ClientSrcPort", "ClientXRequestedWith", "CacheTieredFill", "EdgeResponseCompressionRatio", "EdgeServerIP", "FirewallMatchesSources", 33 "FirewallMatchesActions", "FirewallMatchesRuleIDs", "OriginResponseBytes", "OriginResponseTime", "ClientDeviceType", "WAFFlags", "WAFMatchedVar", "EdgeColoID", 34 }...) 35 ) 36 37 func Fields(t FieldsType) ([]string, error) { 38 switch t { 39 case FieldsTypeDefault: 40 return defaultFields, nil 41 case FieldsTypeMinimal: 42 return minimalFields, nil 43 case FieldsTypeExtended: 44 return extendedFields, nil 45 case FieldsTypeAll: 46 return allFields, nil 47 default: 48 return nil, fmt.Errorf("unknown fields type: %s", t) 49 } 50 }