Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Author ¶
type Author struct {
Name string `json:"name"`
}
Author represents an author in instrumentation metadata
type Category ¶
type Category string
Category represents the type of issue
const ( CategoryMissingOtel Category = "missing_otel" CategoryConfiguration Category = "configuration" CategoryInstrumentation Category = "instrumentation" CategoryPerformance Category = "performance" CategorySecurity Category = "security" CategoryBestPractice Category = "best_practice" CategoryDeprecated Category = "deprecated" )
type ComponentType ¶
type ComponentType string
ComponentType represents different types of OTEL components
const ( ComponentTypeInstrumentation ComponentType = "instrumentation" ComponentTypeSDK ComponentType = "sdk" ComponentTypePropagator ComponentType = "propagator" ComponentTypeExporter ComponentType = "exporter" )
type EntryPoint ¶
type EntryPoint struct { FilePath string `json:"file_path"` Language string `json:"language"` FunctionName string `json:"function_name"` LineNumber uint32 `json:"line_number"` Column uint32 `json:"column"` NodeType string `json:"node_type"` Confidence float64 `json:"confidence"` Context string `json:"context"` }
EntryPoint represents an entry point in the codebase
type InstrumentationInfo ¶
type InstrumentationInfo struct { Package Package `json:"package"` Title string `json:"title"` Description string `json:"description"` RegistryType string `json:"registry_type"` Language string `json:"language"` Tags []string `json:"tags,omitempty"` License string `json:"license,omitempty"` Authors []Author `json:"authors,omitempty"` URLs URLs `json:"urls,omitempty"` CreatedAt string `json:"created_at,omitempty"` IsFirstParty bool `json:"is_first_party"` IsAvailable bool `json:"is_available"` RegistryURL string `json:"registry_url,omitempty"` }
InstrumentationInfo represents available instrumentation for a package
type Issue ¶
type Issue struct { ID string `json:"id"` Title string `json:"title"` Description string `json:"description"` Severity Severity `json:"severity"` Category Category `json:"category"` Language string `json:"language,omitempty"` File string `json:"file,omitempty"` Line int `json:"line,omitempty"` Column int `json:"column,omitempty"` Suggestion string `json:"suggestion,omitempty"` References []string `json:"references,omitempty"` }
Issue represents a detected problem or recommendation
type Library ¶
type Library struct { Name string `json:"name"` Version string `json:"version,omitempty"` Language string `json:"language"` ImportPath string `json:"import_path,omitempty"` PackageFile string `json:"package_file,omitempty"` }
Library represents an OpenTelemetry library or package
type Opportunity ¶
type Opportunity struct { Type OpportunityType `json:"type"` Language string `json:"language"` Framework string `json:"framework"` ComponentType ComponentType `json:"componentType"` Component string `json:"component"` FilePath string `json:"file_path"` Suggestion string `json:"suggestion"` Issue *Issue `json:"issue,omitempty"` }
Opportunity represents an instrumentation opportunity in the codebase
type OpportunityType ¶
type OpportunityType string
OpportunityType represents different types of instrumentation opportunities
const ( OpportunityInstallOTEL OpportunityType = "install_otel" OpportunityInstallComponent OpportunityType = "install_component" OpportunityRemoveComponent OpportunityType = "remove_component" )
type Package ¶
type Package struct { Name string `json:"name"` Version string `json:"version,omitempty"` Language string `json:"language"` ImportPath string `json:"import_path,omitempty"` PackageFile string `json:"package_file,omitempty"` }
Package represents a regular package/dependency
Click to show internal directories.
Click to hide internal directories.