export

package
v1.23.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 15, 2023 License: Apache-2.0 Imports: 171 Imported by: 0

Documentation

Index

Constants

View Source
const DYNATRACE_PROVIDER_SOURCE = "DYNATRACE_PROVIDER_SOURCE"
View Source
const DYNATRACE_PROVIDER_VERSION = "DYNATRACE_PROVIDER_VERSION"

Variables

View Source
var AllResources = map[ResourceType]ResourceDescriptor{}/* 147 elements not displayed */
View Source
var BlackListedResources = []ResourceType{
	ResourceTypes.MaintenanceWindow,
	ResourceTypes.ManagementZone,
	ResourceTypes.Notification,
	ResourceTypes.AlertingProfile,
	ResourceTypes.Dashboard,
	ResourceTypes.IAMUser,
	ResourceTypes.IAMGroup,
	ResourceTypes.IAMPermission,

	ResourceTypes.JSONDashboard,
	ResourceTypes.DashboardSharing,

	ResourceTypes.ProcessGroupAnomalies,

	ResourceTypes.WebAppEnablement,
	ResourceTypes.MobileAppEnablement,
	ResourceTypes.CustomAppEnablement,
	ResourceTypes.SessionReplayWebPrivacy,
	ResourceTypes.SessionReplayResourceCapture,
	ResourceTypes.BrowserMonitorOutageHandling,
	ResourceTypes.HttpMonitorOutageHandling,
	ResourceTypes.DataPrivacy,
}
View Source
var CleanUp = &cleanUp{finalizers: []func(){
	cache.Cleanup,
}}
View Source
var DataSourceTypes = struct {
	Service          DataSourceType
	AWSIAMExternalID DataSourceType
}{
	"dynatrace_service",
	"dynatrace_aws_iam_external",
}
View Source
var Dependencies = struct {
	ManagementZone          Dependency
	LegacyID                func(resourceType ResourceType) Dependency
	ID                      func(resourceType ResourceType) Dependency
	ServiceMethod           Dependency
	Service                 Dependency
	HostGroup               Dependency
	Host                    Dependency
	Disk                    Dependency
	ProcessGroup            Dependency
	ProcessGroupInstance    Dependency
	RequestAttribute        Dependency
	CustomApplication       Dependency
	MobileApplication       Dependency
	DeviceApplicationMethod Dependency
	Application             Dependency
	ApplicationMethod       Dependency
	SyntheticTest           Dependency
	HttpCheck               Dependency
}{
	ManagementZone:          &mgmzdep{ResourceTypes.ManagementZoneV2},
	LegacyID:                func(resourceType ResourceType) Dependency { return &legacyID{resourceType} },
	ID:                      func(resourceType ResourceType) Dependency { return &iddep{resourceType} },
	ServiceMethod:           &entityds{"SERVICE_METHOD", "SERVICE_METHOD-[A-Z0-9]{16}", false},
	Service:                 &entityds{"SERVICE", "SERVICE-[A-Z0-9]{16}", false},
	HostGroup:               &entityds{"HOST_GROUP", "HOST_GROUP-[A-Z0-9]{16}", false},
	Host:                    &entityds{"HOST", "HOST-[A-Z0-9]{16}", false},
	Disk:                    &entityds{"DISK", "DISK-[A-Z0-9]{16}", false},
	ProcessGroup:            &entityds{"PROCESS_GROUP", "PROCESS_GROUP-[A-Z0-9]{16}", false},
	ProcessGroupInstance:    &entityds{"PROCESS_GROUP_INSTANCE", "PROCESS_GROUP_INSTANCE-[A-Z0-9]{16}", false},
	RequestAttribute:        &reqAttName{ResourceTypes.RequestAttribute},
	CustomApplication:       &entityds{"CUSTOM_APPLICATION", "CUSTOM_APPLICATION-[A-Z0-9]{16}", false},
	MobileApplication:       &entityds{"MOBILE_APPLICATION", "MOBILE_APPLICATION-[A-Z0-9]{16}", false},
	DeviceApplicationMethod: &entityds{"DEVICE_APPLICATION_METHOD", "DEVICE_APPLICATION_METHOD-[A-Z0-9]{16}", false},
	Application:             &entityds{"APPLICATION", "APPLICATION-[A-Z0-9]{16}", false},
	ApplicationMethod:       &entityds{"APPLICATION_METHOD", "APPLICATION_METHOD-[A-Z0-9]{16}", false},
	SyntheticTest:           &entityds{"SYNTHETIC_TEST", "SYNTHETIC_TEST-[A-Z0-9]{16}", false},
	HttpCheck:               &entityds{"HTTP_CHECK", "HTTP_CHECK-[A-Z0-9]{16}", false},
}
View Source
var ModuleStati = struct {
	Untouched  ModuleStatus
	Discovered ModuleStatus
	Downloaded ModuleStatus
	Erronous   ModuleStatus
	Imported   ModuleStatus
}{
	"Untouched",
	"Discovered",
	"Downloaded",
	"Erronous",
	"Imported",
}
View Source
var ResourceStati = struct {
	Downloaded    ResourceStatus
	Erronous      ResourceStatus
	Excluded      ResourceStatus
	Discovered    ResourceStatus
	PostProcessed ResourceStatus
}{
	"Downloaded",
	"Erronous",
	"Excluded",
	"Discovered",
	"PostProcessed",
}
View Source
var ResourceTypes = struct {
	AutoTag                             ResourceType
	CustomService                       ResourceType
	RequestAttribute                    ResourceType
	ApplicationAnomalies                ResourceType
	DatabaseAnomalies                   ResourceType
	DiskEventAnomalies                  ResourceType
	HostAnomalies                       ResourceType
	ServiceAnomalies                    ResourceType
	CustomAnomalies                     ResourceType
	WebApplication                      ResourceType
	MobileApplication                   ResourceType
	MaintenanceWindow                   ResourceType
	ManagementZone                      ResourceType
	SLO                                 ResourceType
	SpanAttribute                       ResourceType
	SpanCaptureRule                     ResourceType
	SpanContextPropagation              ResourceType
	SpanEntryPoint                      ResourceType
	ResourceAttributes                  ResourceType
	JiraNotification                    ResourceType
	WebHookNotification                 ResourceType
	AnsibleTowerNotification            ResourceType
	EmailNotification                   ResourceType
	OpsGenieNotification                ResourceType
	PagerDutyNotification               ResourceType
	ServiceNowNotification              ResourceType
	SlackNotification                   ResourceType
	TrelloNotification                  ResourceType
	VictorOpsNotification               ResourceType
	XMattersNotification                ResourceType
	Alerting                            ResourceType
	FrequentIssues                      ResourceType
	MetricEvents                        ResourceType
	IBMMQFilters                        ResourceType
	IMSBridge                           ResourceType
	QueueManager                        ResourceType
	KeyRequests                         ResourceType
	Maintenance                         ResourceType
	ManagementZoneV2                    ResourceType
	NetworkZones                        ResourceType
	AWSCredentials                      ResourceType
	AzureCredentials                    ResourceType
	CloudFoundryCredentials             ResourceType
	KubernetesCredentials               ResourceType
	Credentials                         ResourceType
	Dashboard                           ResourceType
	JSONDashboard                       ResourceType
	CalculatedServiceMetric             ResourceType
	HostNaming                          ResourceType
	ProcessGroupNaming                  ResourceType
	ServiceNaming                       ResourceType
	NetworkZone                         ResourceType
	RequestNaming                       ResourceType
	BrowserMonitor                      ResourceType
	HTTPMonitor                         ResourceType
	DashboardSharing                    ResourceType
	ApplicationDetection                ResourceType
	ApplicationErrorRules               ResourceType
	ApplicationDataPrivacy              ResourceType
	SyntheticLocation                   ResourceType
	Notification                        ResourceType
	QueueSharingGroups                  ResourceType
	AlertingProfile                     ResourceType
	RequestNamings                      ResourceType
	IAMUser                             ResourceType
	IAMGroup                            ResourceType
	IAMPermission                       ResourceType
	ProcessGroupAnomalies               ResourceType
	DDUPool                             ResourceType
	ProcessGroupAlerting                ResourceType
	ServiceAnomaliesV2                  ResourceType
	DatabaseAnomaliesV2                 ResourceType
	ProcessMonitoringRule               ResourceType
	DiskAnomaliesV2                     ResourceType
	DiskSpecificAnomaliesV2             ResourceType
	HostAnomaliesV2                     ResourceType
	CustomAppAnomalies                  ResourceType
	CustomAppCrashRate                  ResourceType
	ProcessMonitoring                   ResourceType
	ProcessAvailability                 ResourceType
	AdvancedProcessGroupDetectionRule   ResourceType
	MobileAppAnomalies                  ResourceType
	MobileAppCrashRate                  ResourceType
	WebAppAnomalies                     ResourceType
	MutedRequests                       ResourceType
	ConnectivityAlerts                  ResourceType
	DeclarativeGrouping                 ResourceType
	HostMonitoring                      ResourceType
	HostProcessGroupMonitoring          ResourceType
	RUMIPLocations                      ResourceType
	CustomAppEnablement                 ResourceType
	MobileAppEnablement                 ResourceType
	WebAppEnablement                    ResourceType
	RUMProcessGroup                     ResourceType
	RUMProviderBreakdown                ResourceType
	UserExperienceScore                 ResourceType
	WebAppResourceCleanup               ResourceType
	UpdateWindows                       ResourceType
	ProcessGroupDetectionFlags          ResourceType
	ProcessGroupMonitoring              ResourceType
	ProcessGroupSimpleDetection         ResourceType
	LogMetrics                          ResourceType
	BrowserMonitorPerformanceThresholds ResourceType
	HttpMonitorPerformanceThresholds    ResourceType
	HttpMonitorCookies                  ResourceType
	SessionReplayWebPrivacy             ResourceType
	SessionReplayResourceCapture        ResourceType
	UsabilityAnalytics                  ResourceType
	SyntheticAvailability               ResourceType
	BrowserMonitorOutageHandling        ResourceType
	HttpMonitorOutageHandling           ResourceType
	CloudAppWorkloadDetection           ResourceType
	MainframeTransactionMonitoring      ResourceType
	MonitoredTechnologiesApache         ResourceType
	MonitoredTechnologiesDotNet         ResourceType
	MonitoredTechnologiesGo             ResourceType
	MonitoredTechnologiesIIS            ResourceType
	MonitoredTechnologiesJava           ResourceType
	MonitoredTechnologiesNGINX          ResourceType
	MonitoredTechnologiesNodeJS         ResourceType
	MonitoredTechnologiesOpenTracing    ResourceType
	MonitoredTechnologiesPHP            ResourceType
	MonitoredTechnologiesVarnish        ResourceType
	MonitoredTechnologiesWSMB           ResourceType
	ProcessVisibility                   ResourceType
	RUMHostHeaders                      ResourceType
	RUMIPDetermination                  ResourceType
	MobileAppRequestErrors              ResourceType
	TransactionStartFilters             ResourceType
	OneAgentFeatures                    ResourceType
	RUMOverloadPrevention               ResourceType
	RUMAdvancedCorrelation              ResourceType
	WebAppBeaconOrigins                 ResourceType
	WebAppResourceTypes                 ResourceType
	GenericTypes                        ResourceType
	GenericRelationships                ResourceType
	SLONormalization                    ResourceType
	DataPrivacy                         ResourceType
	ServiceFailure                      ResourceType
	ServiceHTTPFailure                  ResourceType
	DiskOptions                         ResourceType
	OSServices                          ResourceType
	ExtensionExecutionController        ResourceType
	NetTracerTraffic                    ResourceType
	AIXExtension                        ResourceType
	MetricMetadata                      ResourceType
	MetricQuery                         ResourceType

}{}/* 147 elements not displayed */

Functions

func AsDataSource added in v1.22.0

func AsDataSource(resource *Resource) string

func ConfigureRESTLog

func ConfigureRESTLog() (err error)

func DefaultReplace

func DefaultReplace(s string, cnt int) string

func ResourceName

func ResourceName(s string, cnt int) string

func Service

func Service(credentials *settings.Credentials, resourceType ResourceType) settings.CRUDService[settings.Settings]

func ValidateResource

func ValidateResource(keyVal string) (string, string)

Types

type DataSource

type DataSource struct {
	ID   string
	Type string
	Name string
}

type DataSourceType

type DataSourceType string

func (DataSourceType) Trim

func (me DataSourceType) Trim() string

type Dependency

type Dependency interface {
	Replace(environment *Environment, s string, replacingIn ResourceType) (string, []any)
	ResourceType() ResourceType
	DataSourceType() DataSourceType
}

func Coalesce

func Coalesce(d Dependency) Dependency

type Environment

type Environment struct {
	OutputFolder string
	Credentials  *settings.Credentials
	Modules      map[ResourceType]*Module
	Flags        Flags
	ResArgs      map[string][]string
	// contains filtered or unexported fields
}

func Initialize

func Initialize() (environment *Environment, err error)

func (*Environment) CreateFile

func (me *Environment) CreateFile(name string) (*os.File, error)

func (*Environment) DataSource

func (me *Environment) DataSource(id string) *DataSource

func (*Environment) ExecuteImport

func (me *Environment) ExecuteImport() error

func (*Environment) Export

func (me *Environment) Export() (err error)

func (*Environment) Finish

func (me *Environment) Finish() (err error)

func (*Environment) GetAttentionFolder

func (me *Environment) GetAttentionFolder() string

func (*Environment) GetFlawedFolder

func (me *Environment) GetFlawedFolder() string

func (*Environment) GetFolder

func (me *Environment) GetFolder() string

func (*Environment) GetNonPostProcessedResources

func (me *Environment) GetNonPostProcessedResources() []*Resource

func (*Environment) GetResourceTypesWithDownloads

func (me *Environment) GetResourceTypesWithDownloads() []ResourceType

func (*Environment) InitialDownload

func (me *Environment) InitialDownload() error

func (*Environment) Module

func (me *Environment) Module(resType ResourceType) *Module

func (*Environment) PostProcess

func (me *Environment) PostProcess() error

func (*Environment) RefersTo

func (me *Environment) RefersTo(resource *Resource) bool

func (*Environment) RemoveNonReferencedModules added in v1.22.0

func (me *Environment) RemoveNonReferencedModules() (err error)

func (*Environment) WriteDataSourceFiles

func (me *Environment) WriteDataSourceFiles() (err error)

func (*Environment) WriteMainFile

func (me *Environment) WriteMainFile() error

func (*Environment) WriteProviderFiles

func (me *Environment) WriteProviderFiles() (err error)

func (*Environment) WriteResourceFiles

func (me *Environment) WriteResourceFiles() (err error)

func (*Environment) WriteVariablesFiles

func (me *Environment) WriteVariablesFiles() (err error)

type Flags

type Flags struct {
	FollowReferences    bool
	PersistIDs          bool
	FlagMigrationOutput bool
	FlagVerbose         bool
	FlagHardLinks       bool
	FlagPreviewOnly     bool
	Flat                bool
	ImportState         bool
	Exclude             bool
	DataSources         bool
}

type Module

type Module struct {
	Environment *Environment
	Type        ResourceType
	Resources   map[string]*Resource
	DataSources map[string]*DataSource

	Status     ModuleStatus
	Error      error
	Descriptor *ResourceDescriptor
	Service    settings.CRUDService[settings.Settings]
	// contains filtered or unexported fields
}

func (*Module) ContainsPostProcessedResources

func (me *Module) ContainsPostProcessedResources() bool

func (*Module) CreateFile

func (me *Module) CreateFile(name string) (*os.File, error)

func (*Module) DataSource

func (me *Module) DataSource(id string) *DataSource

func (*Module) Discover

func (me *Module) Discover() error

func (*Module) Download

func (me *Module) Download(multiThreaded bool, keys ...string) (err error)

func (*Module) ExecuteImport

func (me *Module) ExecuteImport() (err error)

func (*Module) GetAttentionFolder

func (me *Module) GetAttentionFolder(relative ...bool) string

func (*Module) GetFile

func (me *Module) GetFile(name string) string

func (*Module) GetFlawedFolder

func (me *Module) GetFlawedFolder(relative ...bool) string

func (*Module) GetFolder

func (me *Module) GetFolder(relative ...bool) string

func (*Module) GetNonPostProcessedResources

func (me *Module) GetNonPostProcessedResources() []*Resource

func (*Module) GetReferencedResourceTypes

func (me *Module) GetReferencedResourceTypes() []ResourceType

func (*Module) GetResourceReferences

func (me *Module) GetResourceReferences() []*Resource

func (*Module) GetResourcesReferencedFromOtherModules

func (me *Module) GetResourcesReferencedFromOtherModules() []*Resource

func (*Module) IsReferencedAsDataSource added in v1.22.0

func (me *Module) IsReferencedAsDataSource() bool

func (*Module) MkdirAll

func (me *Module) MkdirAll(flawed bool) error

func (*Module) OpenFile

func (me *Module) OpenFile(name string) (file *os.File, err error)

func (*Module) PurgeFolder added in v1.22.0

func (me *Module) PurgeFolder() (err error)

func (*Module) RefersTo

func (me *Module) RefersTo(resource *Resource) bool

func (*Module) Resource

func (me *Module) Resource(id string) *Resource

func (*Module) WriteDataSourcesFile

func (me *Module) WriteDataSourcesFile() (err error)

func (*Module) WriteProviderFile

func (me *Module) WriteProviderFile() (err error)

func (*Module) WriteResourcesFile

func (me *Module) WriteResourcesFile() (err error)

func (*Module) WriteVariablesFile

func (me *Module) WriteVariablesFile() (err error)

type ModuleStatus

type ModuleStatus string

func (ModuleStatus) IsOneOf

func (me ModuleStatus) IsOneOf(stati ...ModuleStatus) bool

type ReplaceFunc

type ReplaceFunc func(s string, cnt int) string

type Resource

type Resource struct {
	ID                   string
	LegacyID             string
	Name                 string
	UniqueName           string
	Type                 ResourceType
	Module               *Module
	Status               ResourceStatus
	Error                error
	ResourceReferences   []*Resource
	DataSourceReferences []*DataSource
	OutputFileAbs        string
	Flawed               bool
}

func (*Resource) CreateFile

func (me *Resource) CreateFile() (*os.File, error)

func (*Resource) Download

func (me *Resource) Download() error

func (*Resource) GetAttentionFile

func (me *Resource) GetAttentionFile() string

func (*Resource) GetFile

func (me *Resource) GetFile() string

func (*Resource) GetFileName

func (me *Resource) GetFileName() string

func (*Resource) GetFlawedFile added in v1.22.2

func (me *Resource) GetFlawedFile() string

func (*Resource) GetResourceReferences

func (me *Resource) GetResourceReferences() []*Resource

func (*Resource) IsReferencedAsDataSource added in v1.22.0

func (me *Resource) IsReferencedAsDataSource() bool

func (*Resource) PostProcess

func (me *Resource) PostProcess() error

func (*Resource) ReadFile

func (me *Resource) ReadFile() ([]byte, error)

func (*Resource) RefersTo

func (me *Resource) RefersTo(other *Resource) bool

func (*Resource) SetName

func (me *Resource) SetName(name string) *Resource

type ResourceDescriptor

type ResourceDescriptor struct {
	Dependencies []Dependency
	Service      func(credentials *settings.Credentials) settings.CRUDService[settings.Settings]
	// contains filtered or unexported fields
}

func NewResourceDescriptor

func NewResourceDescriptor[T settings.Settings](fn func(credentials *settings.Credentials) settings.CRUDService[T], dependencies ...Dependency) ResourceDescriptor

func (ResourceDescriptor) Except

func (me ResourceDescriptor) Except(except func(id string, name string) bool) ResourceDescriptor

func (ResourceDescriptor) NewSettings

func (me ResourceDescriptor) NewSettings() settings.Settings

func (ResourceDescriptor) Specify

type ResourceStatus

type ResourceStatus string

func (ResourceStatus) IsOneOf

func (me ResourceStatus) IsOneOf(stati ...ResourceStatus) bool

type ResourceType

type ResourceType string

func (ResourceType) AsDataSource added in v1.22.0

func (me ResourceType) AsDataSource() string

func (ResourceType) Trim

func (me ResourceType) Trim() string

type UniqueNamer

type UniqueNamer interface {
	Name(string) string
	Replace(ReplaceFunc) UniqueNamer
}

func NewUniqueNamer

func NewUniqueNamer() UniqueNamer

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL