grafana/pkg/services/supportbundles/interface.go
Jo 4bcd3b41ec
Server: Remove unused services (#62015)
remove unused entries

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
2023-01-26 16:13:22 +01:00

54 lines
1.3 KiB
Go

package supportbundles
import "context"
type SupportItem struct {
Filename string
FileBytes []byte
}
type State string
const (
StatePending State = "pending"
StateComplete State = "complete"
StateError State = "error"
StateTimeout State = "timeout"
)
func (s State) String() string {
return string(s)
}
type Bundle struct {
UID string `json:"uid"`
State State `json:"state"`
Creator string `json:"creator"`
CreatedAt int64 `json:"createdAt"`
ExpiresAt int64 `json:"expiresAt"`
TarBytes []byte `json:"tarBytes,omitempty"`
}
type CollectorFunc func(context.Context) (*SupportItem, error)
type Collector struct {
// UID is a unique identifier for the collector.
UID string `json:"uid"`
// DisplayName is the name of the collector. User facing.
DisplayName string `json:"displayName"`
// Description is a description of the collector. User facing.
Description string `json:"description"`
// IncludedByDefault determines if the collector is included by default.
// User cannot override this.
IncludedByDefault bool `json:"includedByDefault"`
// Default determines if the collector is included by default.
// User can override this.
Default bool `json:"default"`
// Fn is the function that collects the support item.
Fn CollectorFunc `json:"-"`
}
type Service interface {
RegisterSupportItemCollector(collector Collector)
}