@@ -2,7 +2,9 @@ package collect
22
33import (
44 "context"
5+ "fmt"
56 "strconv"
7+ "strings"
68 "time"
79
810 "github.com/pkg/errors"
@@ -107,3 +109,83 @@ func collectorTitleOrDefault(meta troubleshootv1beta2.CollectorMeta, defaultTitl
107109 }
108110 return defaultTitle
109111}
112+
113+ func getCollectorName (c interface {}) string {
114+ var collector , name , selector string
115+
116+ switch v := c .(type ) {
117+ case * CollectClusterInfo :
118+ collector = "cluster-info"
119+ case * CollectClusterResources :
120+ collector = "cluster-resources"
121+ case * CollectSecret :
122+ collector = "secret"
123+ name = v .Collector .CollectorName
124+ selector = strings .Join (v .Collector .Selector , "," )
125+ case * CollectConfigMap :
126+ collector = "configmap"
127+ name = v .Collector .CollectorName
128+ selector = strings .Join (v .Collector .Selector , "," )
129+ case * CollectLogs :
130+ collector = "logs"
131+ name = v .Collector .CollectorName
132+ selector = strings .Join (v .Collector .Selector , "," )
133+ case * CollectRun :
134+ collector = "run"
135+ name = v .Collector .CollectorName
136+ case * CollectRunPod :
137+ collector = "run-pod"
138+ name = v .Collector .CollectorName
139+ case * CollectExec :
140+ collector = "exec"
141+ name = v .Collector .CollectorName
142+ selector = strings .Join (v .Collector .Selector , "," )
143+ case * CollectData :
144+ collector = "data"
145+ name = v .Collector .CollectorName
146+ case * CollectCopy :
147+ collector = "copy"
148+ name = v .Collector .CollectorName
149+ selector = strings .Join (v .Collector .Selector , "," )
150+ case * CollectCopyFromHost :
151+ collector = "copy-from-host"
152+ name = v .Collector .CollectorName
153+ case * CollectHTTP :
154+ collector = "http"
155+ name = v .Collector .CollectorName
156+ case * CollectPostgres :
157+ collector = "postgres"
158+ name = v .Collector .CollectorName
159+ case * CollectMysql :
160+ collector = "mysql"
161+ name = v .Collector .CollectorName
162+ case * CollectRedis :
163+ collector = "redis"
164+ name = v .Collector .CollectorName
165+ case * CollectCollectd :
166+ collector = "collectd"
167+ name = v .Collector .CollectorName
168+ case * CollectCeph :
169+ collector = "ceph"
170+ name = v .Collector .CollectorName
171+ case * CollectLonghorn :
172+ collector = "longhorn"
173+ name = v .Collector .CollectorName
174+ case * CollectRegistry :
175+ collector = "registry-images"
176+ name = v .Collector .CollectorName
177+ case * CollectSysctl :
178+ collector = "sysctl"
179+ name = v .Collector .Name
180+ default :
181+ collector = "<none>"
182+ }
183+
184+ if name != "" {
185+ return fmt .Sprintf ("%s/%s" , collector , name )
186+ }
187+ if selector != "" {
188+ return fmt .Sprintf ("%s/%s" , collector , selector )
189+ }
190+ return collector
191+ }
0 commit comments