SYMBOL INDEX (584 symbols across 101 files) FILE: cmd/yace/main.go constant enableFeatureFlag (line 38) | enableFeatureFlag = "enable-feature" constant htmlVersion (line 39) | htmlVersion = ` constant htmlPprof (line 48) | htmlPprof = `
` constant defaultLogLevel (line 54) | defaultLogLevel = "info" constant defaultLogFormat (line 55) | defaultLogFormat = "json" function main (line 74) | func main() { function NewYACEApp (line 89) | func NewYACEApp() *cli.App { function startScraper (line 250) | func startScraper(c *cli.Context) error { function newLogger (line 335) | func newLogger(format, level string) *slog.Logger { FILE: cmd/yace/main_test.go function TestYACEApp_FeatureFlagsParsedCorrectly (line 22) | func TestYACEApp_FeatureFlagsParsedCorrectly(t *testing.T) { FILE: cmd/yace/scraper.go type Scraper (line 30) | type Scraper struct method makeHandler (line 50) | func (s *Scraper) makeHandler() func(http.ResponseWriter, *http.Reques... method decoupled (line 59) | func (s *Scraper) decoupled(ctx context.Context, logger *slog.Logger, ... method scrape (line 78) | func (s *Scraper) scrape(ctx context.Context, logger *slog.Logger, job... type cachingFactory (line 35) | type cachingFactory interface function NewScraper (line 41) | func NewScraper(featureFlags []string) *Scraper { FILE: pkg/clients/account/client.go type Client (line 24) | type Client interface type client (line 32) | type client struct method GetAccount (line 46) | func (c client) GetAccount(ctx context.Context) (string, error) { method GetAccountAlias (line 57) | func (c client) GetAccountAlias(ctx context.Context) (string, error) { function NewClient (line 38) | func NewClient(logger *slog.Logger, stsClient *sts.Client, iamClient *ia... FILE: pkg/clients/cloudwatch/client.go type Client (line 28) | type Client interface type MetricDataResult (line 43) | type MetricDataResult struct type DataPoint (line 48) | type DataPoint struct type client (line 53) | type client struct method ListMetrics (line 65) | func (c client) ListMetrics(ctx context.Context, namespace string, met... method GetMetricData (line 123) | func (c client) GetMetricData(ctx context.Context, getMetricData []*mo... method GetMetricStatistics (line 197) | func (c client) GetMetricStatistics(ctx context.Context, logger *slog.... function NewClient (line 58) | func NewClient(logger *slog.Logger, cloudwatchAPI *aws_cloudwatch.Client... function toModelMetric (line 98) | func toModelMetric(page *aws_cloudwatch.ListMetricsOutput) []*model.Metr... function toModelDimensions (line 111) | func toModelDimensions(dimensions []types.Dimension) []model.Dimension { function toMetricDataResult (line 175) | func toMetricDataResult(resp aws_cloudwatch.GetMetricDataOutput, exportA... function toModelDataPoints (line 222) | func toModelDataPoints(cwDataPoints []*types.Datapoint) []*model.MetricS... FILE: pkg/clients/cloudwatch/client_test.go function Test_toMetricDataResult (line 26) | func Test_toMetricDataResult(t *testing.T) { FILE: pkg/clients/cloudwatch/concurrency_client.go constant listMetricsCall (line 24) | listMetricsCall = "ListMetrics" constant getMetricDataCall (line 25) | getMetricDataCall = "GetMetricData" constant getMetricStatisticsCall (line 26) | getMetricStatisticsCall = "GetMetricStatistics" type ConcurrencyLimiter (line 33) | type ConcurrencyLimiter interface type limitedConcurrencyClient (line 43) | type limitedConcurrencyClient struct method ListMetrics (line 55) | func (c limitedConcurrencyClient) ListMetrics(ctx context.Context, nam... method GetMetricData (line 62) | func (c limitedConcurrencyClient) GetMetricData(ctx context.Context, g... method GetMetricStatistics (line 69) | func (c limitedConcurrencyClient) GetMetricStatistics(ctx context.Cont... function NewLimitedConcurrencyClient (line 48) | func NewLimitedConcurrencyClient(client Client, limiter ConcurrencyLimit... type ConcurrencyConfig (line 79) | type ConcurrencyConfig struct method NewLimiter (line 113) | func (cfg ConcurrencyConfig) NewLimiter() ConcurrencyLimiter { type semaphore (line 97) | type semaphore method Acquire (line 104) | func (s semaphore) Acquire() { method Release (line 108) | func (s semaphore) Release() { function newSemaphore (line 100) | func newSemaphore(limit int) semaphore { type perAPICallLimiter (line 123) | type perAPICallLimiter struct method Acquire (line 138) | func (l *perAPICallLimiter) Acquire(op string) { method Release (line 149) | func (l *perAPICallLimiter) Release(op string) { function NewPerAPICallLimiter (line 130) | func NewPerAPICallLimiter(listMetrics, getMetricData, getMetricStatistic... type singleLimiter (line 161) | type singleLimiter struct method Acquire (line 172) | func (sl *singleLimiter) Acquire(_ string) { method Release (line 176) | func (sl *singleLimiter) Release(_ string) { function NewSingleLimiter (line 166) | func NewSingleLimiter(limit int) ConcurrencyLimiter { FILE: pkg/clients/cloudwatch/input.go function toCloudWatchDimensions (line 29) | func toCloudWatchDimensions(dimensions []model.Dimension) []types.Dimens... function createGetMetricStatisticsInput (line 42) | func createGetMetricStatisticsInput(logger *slog.Logger, dimensions []mo... function dimensionsToCliString (line 85) | func dimensionsToCliString(dimensions []model.Dimension) string { FILE: pkg/clients/factory.go type Factory (line 50) | type Factory interface type CachingFactory (line 58) | type CachingFactory struct method GetCloudwatchClient (line 174) | func (c *CachingFactory) GetCloudwatchClient(region string, role model... method GetTaggingClient (line 187) | func (c *CachingFactory) GetTaggingClient(region string, role model.Ro... method GetAccountClient (line 211) | func (c *CachingFactory) GetAccountClient(region string, role model.Ro... method Refresh (line 227) | func (c *CachingFactory) Refresh() { method Clear (line 266) | func (c *CachingFactory) Clear() { method GetAWSRegionalConfig (line 291) | func (c *CachingFactory) GetAWSRegionalConfig(region string, role mode... method createCloudwatchClient (line 295) | func (c *CachingFactory) createCloudwatchClient(regionConfig *aws.Conf... method createTaggingClient (line 316) | func (c *CachingFactory) createTaggingClient(regionConfig *aws.Config)... method createAutoScalingClient (line 330) | func (c *CachingFactory) createAutoScalingClient(assumedConfig *aws.Co... method createAPIGatewayClient (line 346) | func (c *CachingFactory) createAPIGatewayClient(assumedConfig *aws.Con... method createAPIGatewayV2Client (line 360) | func (c *CachingFactory) createAPIGatewayV2Client(assumedConfig *aws.C... method createEC2Client (line 374) | func (c *CachingFactory) createEC2Client(assumedConfig *aws.Config) *e... method createDMSClient (line 388) | func (c *CachingFactory) createDMSClient(assumedConfig *aws.Config) *d... method createStorageGatewayClient (line 402) | func (c *CachingFactory) createStorageGatewayClient(assumedConfig *aws... method createPrometheusClient (line 416) | func (c *CachingFactory) createPrometheusClient(assumedConfig *aws.Con... method createStsClient (line 430) | func (c *CachingFactory) createStsClient(awsConfig *aws.Config) *sts.C... method createIAMClient (line 434) | func (c *CachingFactory) createIAMClient(awsConfig *aws.Config) *iam.C... method createShieldClient (line 438) | func (c *CachingFactory) createShieldClient(awsConfig *aws.Config) *sh... type cachedClients (line 69) | type cachedClients struct function NewFactory (line 84) | func NewFactory(logger *slog.Logger, jobsCfg model.JobsConfig, fips bool... function createStsOptions (line 452) | func createStsOptions(stsRegion string, isDebugLoggingEnabled bool, endp... function awsConfigForRegion (line 471) | func awsConfigForRegion(r model.Role, c *aws.Config, region awsRegion, s... FILE: pkg/clients/factory_test.go function TestNewFactory_initializes_clients (line 52) | func TestNewFactory_initializes_clients(t *testing.T) { function TestNewFactory_respects_stsregion (line 158) | func TestNewFactory_respects_stsregion(t *testing.T) { function TestCachingFactory_Clear (line 176) | func TestCachingFactory_Clear(t *testing.T) { function TestCachingFactory_Refresh (line 204) | func TestCachingFactory_Refresh(t *testing.T) { function TestCachingFactory_GetAccountClient (line 247) | func TestCachingFactory_GetAccountClient(t *testing.T) { function TestCachingFactory_GetCloudwatchClient (line 286) | func TestCachingFactory_GetCloudwatchClient(t *testing.T) { function TestCachingFactory_GetTaggingClient (line 326) | func TestCachingFactory_GetTaggingClient(t *testing.T) { function TestCachingFactory_createTaggingClient_DoesNotEnableFIPS (line 366) | func TestCachingFactory_createTaggingClient_DoesNotEnableFIPS(t *testing... function TestCachingFactory_createAPIGatewayClient_EnablesFIPS (line 379) | func TestCachingFactory_createAPIGatewayClient_EnablesFIPS(t *testing.T) { function TestCachingFactory_createAPIGatewayV2Client_EnablesFIPS (line 392) | func TestCachingFactory_createAPIGatewayV2Client_EnablesFIPS(t *testing.... function TestCachingFactory_createAutoScalingClient_DoesNotEnableFIPS (line 405) | func TestCachingFactory_createAutoScalingClient_DoesNotEnableFIPS(t *tes... function TestCachingFactory_createEC2Client_EnablesFIPS (line 418) | func TestCachingFactory_createEC2Client_EnablesFIPS(t *testing.T) { function TestCachingFactory_createDMSClient_EnablesFIPS (line 431) | func TestCachingFactory_createDMSClient_EnablesFIPS(t *testing.T) { function TestCachingFactory_createStorageGatewayClient_EnablesFIPS (line 444) | func TestCachingFactory_createStorageGatewayClient_EnablesFIPS(t *testin... function TestCachingFactory_createPrometheusClient_DoesNotEnableFIPS (line 457) | func TestCachingFactory_createPrometheusClient_DoesNotEnableFIPS(t *test... function TestRaceConditionRefreshClear (line 470) | func TestRaceConditionRefreshClear(t *testing.T) { function getOptions (line 511) | func getOptions[T any, V any](awsClient *T) V { type testClient (line 517) | type testClient struct method GetResources (line 519) | func (t testClient) GetResources(_ context.Context, _ model.DiscoveryJ... method GetAccount (line 523) | func (t testClient) GetAccount(_ context.Context) (string, error) { method GetAccountAlias (line 527) | func (t testClient) GetAccountAlias(_ context.Context) (string, error) { method ListMetrics (line 531) | func (t testClient) ListMetrics(_ context.Context, _ string, _ *model.... method GetMetricData (line 535) | func (t testClient) GetMetricData(_ context.Context, _ []*model.Cloudw... method GetMetricStatistics (line 539) | func (t testClient) GetMetricStatistics(_ context.Context, _ *slog.Log... FILE: pkg/clients/tagging/client.go type Client (line 38) | type Client interface type client (line 44) | type client struct method GetResources (line 83) | func (c client) GetResources(ctx context.Context, job model.DiscoveryJ... function NewClient (line 57) | func NewClient( FILE: pkg/clients/tagging/concurrency_client.go type limitedConcurrencyClient (line 21) | type limitedConcurrencyClient struct method GetResources (line 33) | func (c limitedConcurrencyClient) GetResources(ctx context.Context, jo... function NewLimitedConcurrencyClient (line 26) | func NewLimitedConcurrencyClient(client Client, maxConcurrency int) Clie... FILE: pkg/clients/tagging/filters.go type ServiceFilter (line 35) | type ServiceFilter struct FILE: pkg/clients/tagging/filters_test.go function TestValidServiceFilterNames (line 34) | func TestValidServiceFilterNames(t *testing.T) { function mockAPIOption (line 48) | func mockAPIOption(responses map[string]interface{}) func(*middleware.St... function TestApiGatewayFilterFunc (line 65) | func TestApiGatewayFilterFunc(t *testing.T) { function TestDMSFilterFunc (line 191) | func TestDMSFilterFunc(t *testing.T) { FILE: pkg/config/config.go type ScrapeConf (line 29) | type ScrapeConf struct method Load (line 130) | func (c *ScrapeConf) Load(file string, logger *slog.Logger) (model.Job... method Validate (line 163) | func (c *ScrapeConf) Validate(logger *slog.Logger) (model.JobsConfig, ... method toModelConfig (line 441) | func (c *ScrapeConf) toModelConfig() model.JobsConfig { type Discovery (line 37) | type Discovery struct type ExportedTagsOnMetrics (line 42) | type ExportedTagsOnMetrics type Tag (line 44) | type Tag struct type JobLevelMetricFields (line 49) | type JobLevelMetricFields struct type Job (line 59) | type Job struct method validateDiscoveryJob (line 223) | func (j *Job) validateDiscoveryJob(logger *slog.Logger, jobIdx int) er... type EnhancedMetric (line 74) | type EnhancedMetric struct type Static (line 78) | type Static struct method validateStaticJob (line 319) | func (j *Static) validateStaticJob(logger *slog.Logger, jobIdx int) er... type CustomNamespace (line 88) | type CustomNamespace struct method validateCustomNamespaceJob (line 283) | func (j *CustomNamespace) validateCustomNamespaceJob(logger *slog.Logg... type Metric (line 101) | type Metric struct method validateMetric (line 349) | func (m *Metric) validateMetric(logger *slog.Logger, metricIdx int, pa... type Dimension (line 112) | type Dimension struct type Role (line 117) | type Role struct method ValidateRole (line 122) | func (r *Role) ValidateRole(roleIdx int, parent string) error { function toModelTags (line 501) | func toModelTags(tags []Tag) []model.Tag { function toModelSearchTags (line 512) | func toModelSearchTags(tags []Tag) []model.SearchTag { function toModelRoles (line 525) | func toModelRoles(roles []Role) []model.Role { function toModelDimensions (line 536) | func toModelDimensions(dimensions []Dimension) []model.Dimension { function toModelMetricConfig (line 547) | func toModelMetricConfig(metrics []*Metric) []*model.MetricConfig { function logConfigErrors (line 565) | func logConfigErrors(cfg []byte, logger *slog.Logger) { FILE: pkg/config/config_test.go function TestConfLoad (line 24) | func TestConfLoad(t *testing.T) { function TestBadConfigs (line 44) | func TestBadConfigs(t *testing.T) { function TestValidateConfigFailuresWhenUsingAsLibrary (line 106) | func TestValidateConfigFailuresWhenUsingAsLibrary(t *testing.T) { FILE: pkg/config/feature_flags.go type flagsCtxKey (line 17) | type flagsCtxKey struct constant AlwaysReturnInfoMetrics (line 20) | AlwaysReturnInfoMetrics = "always-return-info-metrics" type FeatureFlags (line 23) | type FeatureFlags interface function CtxWithFlags (line 29) | func CtxWithFlags(ctx context.Context, ctrl FeatureFlags) context.Context { function FlagsFromCtx (line 34) | func FlagsFromCtx(ctx context.Context) FeatureFlags { type noFeatureFlags (line 42) | type noFeatureFlags struct method IsFeatureEnabled (line 44) | func (nff noFeatureFlags) IsFeatureEnabled(_ string) bool { FILE: pkg/config/feature_flags_test.go function TestFeatureFlagsInContext_DefaultsToNonEnabled (line 22) | func TestFeatureFlagsInContext_DefaultsToNonEnabled(t *testing.T) { type flags (line 28) | type flags struct method IsFeatureEnabled (line 30) | func (f flags) IsFeatureEnabled(_ string) bool { function TestFeatureFlagsInContext_RetrievesFlagsFromContext (line 34) | func TestFeatureFlagsInContext_RetrievesFlagsFromContext(t *testing.T) { FILE: pkg/config/services.go type ServiceConfig (line 25) | type ServiceConfig struct method ToModelDimensionsRegexp (line 43) | func (sc ServiceConfig) ToModelDimensionsRegexp() []model.DimensionsRe... method toModelEnhancedMetricsConfig (line 65) | func (sc ServiceConfig) toModelEnhancedMetricsConfig(ems []*EnhancedMe... type serviceConfigs (line 77) | type serviceConfigs method GetService (line 79) | func (sc serviceConfigs) GetService(serviceType string) *ServiceConfig { method getServiceByAlias (line 88) | func (sc serviceConfigs) getServiceByAlias(alias string) *ServiceConfig { FILE: pkg/config/services_test.go function TestSupportedServices (line 23) | func TestSupportedServices(t *testing.T) { FILE: pkg/exporter.go constant DefaultMetricsPerQuery (line 49) | DefaultMetricsPerQuery = 500 constant DefaultLabelsSnakeCase (line 50) | DefaultLabelsSnakeCase = false constant DefaultTaggingAPIConcurrency (line 51) | DefaultTaggingAPIConcurrency = 5 type featureFlagsMap (line 66) | type featureFlagsMap method IsFeatureEnabled (line 77) | func (ff featureFlagsMap) IsFeatureEnabled(flag string) bool { type options (line 68) | type options struct type OptionsFunc (line 82) | type OptionsFunc function MetricsPerQuery (line 84) | func MetricsPerQuery(metricsPerQuery int) OptionsFunc { function LabelsSnakeCase (line 95) | func LabelsSnakeCase(labelsSnakeCase bool) OptionsFunc { function CloudWatchAPIConcurrency (line 102) | func CloudWatchAPIConcurrency(maxConcurrency int) OptionsFunc { function CloudWatchPerAPILimitConcurrency (line 113) | func CloudWatchPerAPILimitConcurrency(listMetrics, getMetricData, getMet... function TaggingAPIConcurrency (line 133) | func TaggingAPIConcurrency(maxConcurrency int) OptionsFunc { function EnableFeatureFlag (line 145) | func EnableFeatureFlag(flags ...string) OptionsFunc { function defaultOptions (line 154) | func defaultOptions() options { function UpdateMetrics (line 178) | func UpdateMetrics( FILE: pkg/exporter_enhancedmetrics_test.go type mockFactoryForEnhancedMetrics (line 36) | type mockFactoryForEnhancedMetrics struct method GetAccountClient (line 44) | func (m *mockFactoryForEnhancedMetrics) GetAccountClient(string, model... method GetCloudwatchClient (line 49) | func (m *mockFactoryForEnhancedMetrics) GetCloudwatchClient(string, mo... method GetTaggingClient (line 54) | func (m *mockFactoryForEnhancedMetrics) GetTaggingClient(string, model... method GetAWSRegionalConfig (line 59) | func (m *mockFactoryForEnhancedMetrics) GetAWSRegionalConfig(string, m... type mockRDSClient (line 64) | type mockRDSClient struct method DescribeDBInstances (line 69) | func (m *mockRDSClient) DescribeDBInstances(context.Context, *slog.Log... type mockLambdaClient (line 77) | type mockLambdaClient struct method ListAllFunctions (line 82) | func (m *mockLambdaClient) ListAllFunctions(context.Context, *slog.Log... type mockElastiCacheClient (line 90) | type mockElastiCacheClient struct method DescribeAllCacheClusters (line 95) | func (m *mockElastiCacheClient) DescribeAllCacheClusters(context.Conte... type mockDynamoDBClient (line 103) | type mockDynamoDBClient struct method DescribeTables (line 108) | func (m *mockDynamoDBClient) DescribeTables(context.Context, *slog.Log... function TestUpdateMetrics_WithEnhancedMetrics_RDS (line 115) | func TestUpdateMetrics_WithEnhancedMetrics_RDS(t *testing.T) { function TestUpdateMetrics_WithEnhancedMetrics_Lambda (line 216) | func TestUpdateMetrics_WithEnhancedMetrics_Lambda(t *testing.T) { function TestUpdateMetrics_WithEnhancedMetrics_ElastiCache (line 318) | func TestUpdateMetrics_WithEnhancedMetrics_ElastiCache(t *testing.T) { function TestUpdateMetrics_WithEnhancedMetrics_DynamoDB (line 420) | func TestUpdateMetrics_WithEnhancedMetrics_DynamoDB(t *testing.T) { FILE: pkg/exporter_test.go type mockFactory (line 37) | type mockFactory struct method GetCloudwatchClient (line 43) | func (f *mockFactory) GetCloudwatchClient(_ string, _ model.Role, _ cl... method GetTaggingClient (line 47) | func (f *mockFactory) GetTaggingClient(_ string, _ model.Role, _ int) ... method GetAccountClient (line 51) | func (f *mockFactory) GetAccountClient(_ string, _ model.Role) account... type mockAccountClient (line 56) | type mockAccountClient struct method GetAccount (line 62) | func (m mockAccountClient) GetAccount(_ context.Context) (string, erro... method GetAccountAlias (line 69) | func (m mockAccountClient) GetAccountAlias(_ context.Context) (string,... type mockTaggingClient (line 77) | type mockTaggingClient struct method GetResources (line 82) | func (m mockTaggingClient) GetResources(_ context.Context, _ model.Dis... type mockCloudwatchClient (line 90) | type mockCloudwatchClient struct method ListMetrics (line 96) | func (m *mockCloudwatchClient) ListMetrics(_ context.Context, _ string... method GetMetricData (line 106) | func (m *mockCloudwatchClient) GetMetricData(_ context.Context, _ []*m... method GetMetricStatistics (line 110) | func (m *mockCloudwatchClient) GetMetricStatistics(_ context.Context, ... function TestUpdateMetrics_StaticJob (line 122) | func TestUpdateMetrics_StaticJob(t *testing.T) { function TestUpdateMetrics_DiscoveryJob (line 173) | func TestUpdateMetrics_DiscoveryJob(t *testing.T) { FILE: pkg/internal/enhancedmetrics/config/provider.go type RegionalConfigProvider (line 23) | type RegionalConfigProvider interface FILE: pkg/internal/enhancedmetrics/registry.go type MetricsService (line 39) | type MetricsService interface type Registry (line 45) | type Registry struct method Register (line 52) | func (receiver *Registry) Register(t MetricsService) *Registry { method GetEnhancedMetricsService (line 65) | func (receiver *Registry) GetEnhancedMetricsService(namespace string) ... FILE: pkg/internal/enhancedmetrics/registry_test.go type registryMockMetricsServiceWrapper (line 27) | type registryMockMetricsServiceWrapper struct method GetNamespace (line 32) | func (m *registryMockMetricsServiceWrapper) GetNamespace() string { method Instance (line 36) | func (m *registryMockMetricsServiceWrapper) Instance() service.Enhance... function TestRegistry_Register (line 43) | func TestRegistry_Register(t *testing.T) { function TestRegistry_GetEnhancedMetricsService (line 109) | func TestRegistry_GetEnhancedMetricsService(t *testing.T) { function TestRegistry_ConcurrentAccess (line 183) | func TestRegistry_ConcurrentAccess(t *testing.T) { function TestDefaultRegistry (line 247) | func TestDefaultRegistry(t *testing.T) { function TestRegistry_ChainedRegistration (line 296) | func TestRegistry_ChainedRegistration(t *testing.T) { function TestRegistry_ServiceFactory (line 319) | func TestRegistry_ServiceFactory(t *testing.T) { FILE: pkg/internal/enhancedmetrics/service.go type MetricsServiceRegistry (line 26) | type MetricsServiceRegistry interface type Service (line 31) | type Service struct method GetMetrics (line 37) | func (ep *Service) GetMetrics( function NewService (line 84) | func NewService( FILE: pkg/internal/enhancedmetrics/service/dynamodb/client.go type awsClient (line 25) | type awsClient interface type AWSDynamoDBClient (line 30) | type AWSDynamoDBClient struct method describeTable (line 42) | func (c *AWSDynamoDBClient) describeTable(ctx context.Context, tableAR... method DescribeTables (line 55) | func (c *AWSDynamoDBClient) DescribeTables(ctx context.Context, logger... function NewDynamoDBClientWithConfig (line 35) | func NewDynamoDBClientWithConfig(cfg aws.Config) Client { FILE: pkg/internal/enhancedmetrics/service/dynamodb/client_test.go function TestAWSDynamoDBClient_DescribeAllTables (line 27) | func TestAWSDynamoDBClient_DescribeAllTables(t *testing.T) { type mockDynamoDBClient (line 100) | type mockDynamoDBClient struct method DescribeTable (line 104) | func (m *mockDynamoDBClient) DescribeTable(ctx context.Context, params... FILE: pkg/internal/enhancedmetrics/service/dynamodb/service.go constant awsDynamoDBNamespace (line 29) | awsDynamoDBNamespace = "AWS/DynamoDB" type Client (line 31) | type Client interface type buildCloudwatchDataFunc (line 36) | type buildCloudwatchDataFunc type supportedMetric (line 38) | type supportedMetric struct method buildCloudwatchData (line 44) | func (sm *supportedMetric) buildCloudwatchData(resource *model.TaggedR... type DynamoDB (line 48) | type DynamoDB struct method GetNamespace (line 77) | func (s *DynamoDB) GetNamespace() string { method loadMetricsMetadata (line 81) | func (s *DynamoDB) loadMetricsMetadata( method IsMetricSupported (line 105) | func (s *DynamoDB) IsMetricSupported(metricName string) bool { method GetMetrics (line 110) | func (s *DynamoDB) GetMetrics(ctx context.Context, logger *slog.Logger... method ListRequiredPermissions (line 166) | func (s *DynamoDB) ListRequiredPermissions() map[string][]string { method ListSupportedEnhancedMetrics (line 174) | func (s *DynamoDB) ListSupportedEnhancedMetrics() []string { method Instance (line 182) | func (s *DynamoDB) Instance() service.EnhancedMetricsService { function NewDynamoDBService (line 53) | func NewDynamoDBService(buildClientFunc func(cfg aws.Config) Client) *Dy... function buildItemCountMetric (line 190) | func buildItemCountMetric(resource *model.TaggedResource, table *types.T... FILE: pkg/internal/enhancedmetrics/service/dynamodb/service_test.go function TestNewDynamoDBService (line 28) | func TestNewDynamoDBService(t *testing.T) { function TestDynamoDB_GetNamespace (line 54) | func TestDynamoDB_GetNamespace(t *testing.T) { function TestDynamoDB_ListRequiredPermissions (line 60) | func TestDynamoDB_ListRequiredPermissions(t *testing.T) { function TestDynamoDB_ListSupportedEnhancedMetrics (line 70) | func TestDynamoDB_ListSupportedEnhancedMetrics(t *testing.T) { function TestDynamoDB_GetMetrics (line 78) | func TestDynamoDB_GetMetrics(t *testing.T) { type mockServiceDynamoDBClient (line 251) | type mockServiceDynamoDBClient struct method DescribeTables (line 256) | func (m *mockServiceDynamoDBClient) DescribeTables(context.Context, *s... type mockConfigProvider (line 263) | type mockConfigProvider struct method GetAWSRegionalConfig (line 267) | func (m *mockConfigProvider) GetAWSRegionalConfig(_ string, _ model.Ro... FILE: pkg/internal/enhancedmetrics/service/elasticache/client.go type awsClient (line 25) | type awsClient interface type AWSElastiCacheClient (line 30) | type AWSElastiCacheClient struct method describeCacheClusters (line 42) | func (c *AWSElastiCacheClient) describeCacheClusters(ctx context.Conte... method DescribeAllCacheClusters (line 52) | func (c *AWSElastiCacheClient) DescribeAllCacheClusters(ctx context.Co... function NewElastiCacheClientWithConfig (line 35) | func NewElastiCacheClientWithConfig(cfg aws.Config) Client { FILE: pkg/internal/enhancedmetrics/service/elasticache/client_test.go function TestAWSElastiCacheClient_DescribeAllCacheClusters (line 27) | func TestAWSElastiCacheClient_DescribeAllCacheClusters(t *testing.T) { type mockElastiCacheClient (line 110) | type mockElastiCacheClient struct method DescribeCacheClusters (line 114) | func (m *mockElastiCacheClient) DescribeCacheClusters(ctx context.Cont... FILE: pkg/internal/enhancedmetrics/service/elasticache/service.go constant awsElastiCacheNamespace (line 29) | awsElastiCacheNamespace = "AWS/ElastiCache" type Client (line 31) | type Client interface type buildCloudwatchDataFunc (line 35) | type buildCloudwatchDataFunc type supportedMetric (line 37) | type supportedMetric struct method buildCloudwatchData (line 43) | func (sm *supportedMetric) buildCloudwatchData(resource *model.TaggedR... type ElastiCache (line 47) | type ElastiCache struct method GetNamespace (line 74) | func (s *ElastiCache) GetNamespace() string { method loadMetricsMetadata (line 78) | func (s *ElastiCache) loadMetricsMetadata(ctx context.Context, logger ... method IsMetricSupported (line 95) | func (s *ElastiCache) IsMetricSupported(metricName string) bool { method GetMetrics (line 100) | func (s *ElastiCache) GetMetrics(ctx context.Context, logger *slog.Log... method ListRequiredPermissions (line 150) | func (s *ElastiCache) ListRequiredPermissions() map[string][]string { method ListSupportedEnhancedMetrics (line 158) | func (s *ElastiCache) ListSupportedEnhancedMetrics() []string { method Instance (line 166) | func (s *ElastiCache) Instance() service.EnhancedMetricsService { function NewElastiCacheService (line 52) | func NewElastiCacheService(buildClientFunc func(cfg aws.Config) Client) ... function buildNumCacheNodesMetric (line 174) | func buildNumCacheNodesMetric(resource *model.TaggedResource, cacheClust... FILE: pkg/internal/enhancedmetrics/service/elasticache/service_test.go function TestNewElastiCacheService (line 28) | func TestNewElastiCacheService(t *testing.T) { function TestElastiCache_GetNamespace (line 54) | func TestElastiCache_GetNamespace(t *testing.T) { function TestElastiCache_ListRequiredPermissions (line 60) | func TestElastiCache_ListRequiredPermissions(t *testing.T) { function TestElastiCache_ListSupportedEnhancedMetrics (line 68) | func TestElastiCache_ListSupportedEnhancedMetrics(t *testing.T) { function TestElastiCache_GetMetrics (line 76) | func TestElastiCache_GetMetrics(t *testing.T) { type mockServiceElastiCacheClient (line 206) | type mockServiceElastiCacheClient struct method DescribeAllCacheClusters (line 211) | func (m *mockServiceElastiCacheClient) DescribeAllCacheClusters(_ cont... type mockConfigProvider (line 218) | type mockConfigProvider struct method GetAWSRegionalConfig (line 222) | func (m *mockConfigProvider) GetAWSRegionalConfig(_ string, _ model.Ro... FILE: pkg/internal/enhancedmetrics/service/lambda/client.go type awsClient (line 25) | type awsClient interface type AWSLambdaClient (line 30) | type AWSLambdaClient struct method listFunctions (line 42) | func (c *AWSLambdaClient) listFunctions(ctx context.Context, input *la... method ListAllFunctions (line 52) | func (c *AWSLambdaClient) ListAllFunctions(ctx context.Context, logger... function NewLambdaClientWithConfig (line 35) | func NewLambdaClientWithConfig(cfg aws.Config) Client { FILE: pkg/internal/enhancedmetrics/service/lambda/client_test.go function TestAWSLambdaClient_ListAllFunctions (line 27) | func TestAWSLambdaClient_ListAllFunctions(t *testing.T) { type mockLambdaClient (line 110) | type mockLambdaClient struct method ListFunctions (line 114) | func (m *mockLambdaClient) ListFunctions(ctx context.Context, params *... FILE: pkg/internal/enhancedmetrics/service/lambda/service.go constant awsLambdaNamespace (line 29) | awsLambdaNamespace = "AWS/Lambda" type Client (line 31) | type Client interface type buildCloudwatchDataFunc (line 35) | type buildCloudwatchDataFunc type supportedMetric (line 37) | type supportedMetric struct method buildCloudwatchData (line 43) | func (sm *supportedMetric) buildCloudwatchData(resource *model.TaggedR... type Lambda (line 47) | type Lambda struct method GetNamespace (line 74) | func (s *Lambda) GetNamespace() string { method loadMetricsMetadata (line 78) | func (s *Lambda) loadMetricsMetadata(ctx context.Context, logger *slog... method IsMetricSupported (line 95) | func (s *Lambda) IsMetricSupported(metricName string) bool { method GetMetrics (line 100) | func (s *Lambda) GetMetrics(ctx context.Context, logger *slog.Logger, ... method ListRequiredPermissions (line 150) | func (s *Lambda) ListRequiredPermissions() map[string][]string { method ListSupportedEnhancedMetrics (line 158) | func (s *Lambda) ListSupportedEnhancedMetrics() []string { method Instance (line 166) | func (s *Lambda) Instance() service.EnhancedMetricsService { function NewLambdaService (line 52) | func NewLambdaService(buildClientFunc func(cfg aws.Config) Client) *Lamb... function buildTimeoutMetric (line 174) | func buildTimeoutMetric(resource *model.TaggedResource, fn *types.Functi... FILE: pkg/internal/enhancedmetrics/service/lambda/service_test.go function TestNewLambdaService (line 28) | func TestNewLambdaService(t *testing.T) { function TestLambda_GetNamespace (line 54) | func TestLambda_GetNamespace(t *testing.T) { function TestLambda_ListRequiredPermissions (line 60) | func TestLambda_ListRequiredPermissions(t *testing.T) { function TestLambda_ListSupportedEnhancedMetrics (line 68) | func TestLambda_ListSupportedEnhancedMetrics(t *testing.T) { function TestLambda_GetMetrics (line 76) | func TestLambda_GetMetrics(t *testing.T) { type mockServiceLambdaClient (line 169) | type mockServiceLambdaClient struct method ListAllFunctions (line 173) | func (m *mockServiceLambdaClient) ListAllFunctions(_ context.Context, ... type mockConfigProvider (line 177) | type mockConfigProvider struct method GetAWSRegionalConfig (line 181) | func (m *mockConfigProvider) GetAWSRegionalConfig(_ string, _ model.Ro... FILE: pkg/internal/enhancedmetrics/service/rds/client.go type awsClient (line 25) | type awsClient interface type AWSRDSClient (line 30) | type AWSRDSClient struct method describeDBInstances (line 42) | func (c *AWSRDSClient) describeDBInstances(ctx context.Context, input ... method DescribeDBInstances (line 51) | func (c *AWSRDSClient) DescribeDBInstances(ctx context.Context, logger... function NewRDSClientWithConfig (line 35) | func NewRDSClientWithConfig(cfg aws.Config) Client { FILE: pkg/internal/enhancedmetrics/service/rds/client_test.go function TestAWSRDSClient_DescribeDBInstances (line 27) | func TestAWSRDSClient_DescribeDBInstances(t *testing.T) { type mockRDSClient (line 123) | type mockRDSClient struct method DescribeDBInstances (line 127) | func (m *mockRDSClient) DescribeDBInstances(ctx context.Context, param... FILE: pkg/internal/enhancedmetrics/service/rds/service.go constant awsRdsNamespace (line 29) | awsRdsNamespace = "AWS/RDS" type Client (line 31) | type Client interface type buildCloudwatchData (line 35) | type buildCloudwatchData type supportedMetric (line 37) | type supportedMetric struct method buildCloudwatchData (line 43) | func (sm *supportedMetric) buildCloudwatchData(resource *model.TaggedR... type RDS (line 47) | type RDS struct method GetNamespace (line 75) | func (s *RDS) GetNamespace() string { method loadMetricsMetadata (line 80) | func (s *RDS) loadMetricsMetadata( method IsMetricSupported (line 104) | func (s *RDS) IsMetricSupported(metricName string) bool { method GetMetrics (line 109) | func (s *RDS) GetMetrics(ctx context.Context, logger *slog.Logger, res... method ListRequiredPermissions (line 165) | func (s *RDS) ListRequiredPermissions() map[string][]string { method ListSupportedEnhancedMetrics (line 173) | func (s *RDS) ListSupportedEnhancedMetrics() []string { method Instance (line 181) | func (s *RDS) Instance() service.EnhancedMetricsService { function NewRDSService (line 52) | func NewRDSService(buildClientFunc func(cfg aws.Config) Client) *RDS { function buildAllocatedStorageMetric (line 189) | func buildAllocatedStorageMetric(resource *model.TaggedResource, instanc... FILE: pkg/internal/enhancedmetrics/service/rds/service_test.go function TestNewRDSService (line 28) | func TestNewRDSService(t *testing.T) { function TestRDS_GetNamespace (line 54) | func TestRDS_GetNamespace(t *testing.T) { function TestRDS_ListRequiredPermissions (line 60) | func TestRDS_ListRequiredPermissions(t *testing.T) { function TestRDS_ListSupportedEnhancedMetrics (line 68) | func TestRDS_ListSupportedEnhancedMetrics(t *testing.T) { function TestRDS_GetMetrics (line 76) | func TestRDS_GetMetrics(t *testing.T) { type mockServiceRDSClient (line 187) | type mockServiceRDSClient struct method DescribeDBInstances (line 192) | func (m *mockServiceRDSClient) DescribeDBInstances(context.Context, *s... type mockConfigProvider (line 199) | type mockConfigProvider struct method GetAWSRegionalConfig (line 203) | func (m *mockConfigProvider) GetAWSRegionalConfig(_ string, _ model.Ro... function makeTestDBInstance (line 209) | func makeTestDBInstance(name string, storage int32) *types.DBInstance { function newTestRDSService (line 220) | func newTestRDSService(regionalData map[string]*types.DBInstance) *RDS { function convertRegionalDataToInstances (line 229) | func convertRegionalDataToInstances(regionalData map[string]*types.DBIns... FILE: pkg/internal/enhancedmetrics/service/services.go type EnhancedMetricsService (line 23) | type EnhancedMetricsService interface FILE: pkg/internal/enhancedmetrics/service_test.go type mockConfigProvider (line 31) | type mockConfigProvider struct method GetAWSRegionalConfig (line 35) | func (m *mockConfigProvider) GetAWSRegionalConfig(region string, _ mod... type mockMetricsService (line 46) | type mockMetricsService struct method GetMetrics (line 53) | func (m *mockMetricsService) GetMetrics(context.Context, *slog.Logger,... method IsMetricSupported (line 60) | func (m *mockMetricsService) IsMetricSupported(_ string) bool { method getGetMetricsCalled (line 64) | func (m *mockMetricsService) getGetMetricsCalled() int { type mockMetricsServiceRegistry (line 71) | type mockMetricsServiceRegistry struct method GetEnhancedMetricsService (line 76) | func (m *mockMetricsServiceRegistry) GetEnhancedMetricsService(namespa... function TestNewService (line 86) | func TestNewService(t *testing.T) { function TestService_GetMetrics (line 92) | func TestService_GetMetrics(t *testing.T) { FILE: pkg/job/cloudwatchrunner/customnamespace.go type CustomNamespaceJob (line 20) | type CustomNamespaceJob struct method Namespace (line 24) | func (c CustomNamespaceJob) Namespace() string { method listMetricsParams (line 28) | func (c CustomNamespaceJob) listMetricsParams() listmetrics.Processing... method CustomTags (line 37) | func (c CustomNamespaceJob) CustomTags() []model.Tag { method resourceEnrichment (line 41) | func (c CustomNamespaceJob) resourceEnrichment() ResourceEnrichment { FILE: pkg/job/cloudwatchrunner/discovery.go type DiscoveryJob (line 20) | type DiscoveryJob struct method Namespace (line 25) | func (d DiscoveryJob) Namespace() string { method CustomTags (line 29) | func (d DiscoveryJob) CustomTags() []model.Tag { method listMetricsParams (line 33) | func (d DiscoveryJob) listMetricsParams() listmetrics.ProcessingParams { method resourceEnrichment (line 42) | func (d DiscoveryJob) resourceEnrichment() ResourceEnrichment { FILE: pkg/job/cloudwatchrunner/runner.go type ResourceEnrichment (line 23) | type ResourceEnrichment interface type Job (line 27) | type Job interface FILE: pkg/job/custom.go function runCustomNamespaceJob (line 24) | func runCustomNamespaceJob( function getMetricDataForQueriesForCustomNamespace (line 47) | func getMetricDataForQueriesForCustomNamespace( FILE: pkg/job/discovery.go type resourceAssociator (line 30) | type resourceAssociator interface type getMetricDataProcessor (line 34) | type getMetricDataProcessor interface type enhancedMetricsService (line 38) | type enhancedMetricsService interface function runDiscoveryJob (line 51) | func runDiscoveryJob( function getMetricDataForQueries (line 123) | func getMetricDataForQueries( type nopAssociator (line 170) | type nopAssociator struct method AssociateMetricToResource (line 172) | func (ns nopAssociator) AssociateMetricToResource(_ *model.Metric) (*m... function getFilteredMetricDatas (line 176) | func getFilteredMetricDatas( function metricDimensionsMatchNames (line 237) | func metricDimensionsMatchNames(metric *model.Metric, dimensionNameRequi... FILE: pkg/job/discovery_test.go function Test_getFilteredMetricDatas (line 26) | func Test_getFilteredMetricDatas(t *testing.T) { FILE: pkg/job/getmetricdata/compact.go function compact (line 18) | func compact[T any](input []*T, keep func(el *T) bool) []*T { FILE: pkg/job/getmetricdata/compact_test.go function TestCompact (line 21) | func TestCompact(t *testing.T) { FILE: pkg/job/getmetricdata/iterator.go type iteratorFactory (line 21) | type iteratorFactory struct method Build (line 25) | func (b iteratorFactory) Build(data []*model.CloudwatchData) Iterator { function mapProcessingParams (line 62) | func mapProcessingParams(data []*model.CloudwatchData) (periodDelayToBat... type nothingToIterate (line 86) | type nothingToIterate struct method Next (line 88) | func (n nothingToIterate) Next() ([]*model.CloudwatchData, StartAndEnd... method HasMore (line 92) | func (n nothingToIterate) HasMore() bool { type simpleBatchingIterator (line 96) | type simpleBatchingIterator struct method Next (line 104) | func (s *simpleBatchingIterator) Next() ([]*model.CloudwatchData, Star... method HasMore (line 124) | func (s *simpleBatchingIterator) HasMore() bool { function NewSimpleBatchIterator (line 129) | func NewSimpleBatchIterator(metricsPerQuery int, data []*model.Cloudwatc... type timeParameterBatchingIterator (line 138) | type timeParameterBatchingIterator struct method Next (line 143) | func (t *timeParameterBatchingIterator) Next() ([]*model.CloudwatchDat... method HasMore (line 164) | func (t *timeParameterBatchingIterator) HasMore() bool { function NewVaryingTimeParameterBatchingIterator (line 168) | func NewVaryingTimeParameterBatchingIterator( FILE: pkg/job/getmetricdata/iterator_test.go function TestIteratorFactory_Build (line 25) | func TestIteratorFactory_Build(t *testing.T) { function TestSimpleBatchingIterator_SetsLengthAndDelay (line 83) | func TestSimpleBatchingIterator_SetsLengthAndDelay(t *testing.T) { function TestSimpleBatchingIterator_IterateFlow (line 97) | func TestSimpleBatchingIterator_IterateFlow(t *testing.T) { function TestVaryingTimeParameterBatchingIterator_IterateFlow (line 151) | func TestVaryingTimeParameterBatchingIterator_IterateFlow(t *testing.T) { FILE: pkg/job/getmetricdata/processor.go type Client (line 29) | type Client interface type IteratorFactory (line 33) | type IteratorFactory interface type Iterator (line 38) | type Iterator interface type StartAndEndTimeParams (line 49) | type StartAndEndTimeParams struct type Processor (line 55) | type Processor struct method Run (line 77) | func (p Processor) Run(ctx context.Context, namespace string, requests... function NewDefaultProcessor (line 63) | func NewDefaultProcessor(logger *slog.Logger, client Client, metricsPerQ... function NewProcessor (line 67) | func NewProcessor(logger *slog.Logger, client Client, concurrency int, w... function addQueryIDsToBatch (line 117) | func addQueryIDsToBatch(batch []*model.CloudwatchData) []*model.Cloudwat... function mapResultsToBatch (line 125) | func mapResultsToBatch(logger *slog.Logger, results []cloudwatch.MetricD... function indexToQueryID (line 151) | func indexToQueryID(i int) string { function queryIDToIndex (line 155) | func queryIDToIndex(queryID string) (int, error) { function toSecondDuration (line 161) | func toSecondDuration(i int64) time.Duration { FILE: pkg/job/getmetricdata/processor_test.go type cloudwatchDataInput (line 30) | type cloudwatchDataInput struct type cloudwatchDataOutput (line 35) | type cloudwatchDataOutput struct type metricDataResultForMetric (line 40) | type metricDataResultForMetric struct type testClient (line 45) | type testClient struct method GetMetricData (line 50) | func (t testClient) GetMetricData(ctx context.Context, getMetricData [... function TestProcessor_Run (line 66) | func TestProcessor_Run(t *testing.T) { function ToCloudwatchData (line 216) | func ToCloudwatchData(input []*cloudwatchDataInput) []*model.CloudwatchD... function getSampleMetricDatas (line 234) | func getSampleMetricDatas(id string) *model.CloudwatchData { function BenchmarkProcessorRun (line 273) | func BenchmarkProcessorRun(b *testing.B) { function doBench (line 303) | func doBench(b *testing.B, metricsPerQuery, testResourcesCount int, conc... FILE: pkg/job/getmetricdata/windowcalculator.go constant TimeFormat (line 17) | TimeFormat = "2006-01-02T15:04:05.999999-07:00" type Clock (line 20) | type Clock interface type TimeClock (line 25) | type TimeClock struct method Now (line 27) | func (tc TimeClock) Now() time.Time { type MetricWindowCalculator (line 31) | type MetricWindowCalculator struct method Calculate (line 38) | func (m MetricWindowCalculator) Calculate(period time.Duration, length... FILE: pkg/job/getmetricdata/windowcalculator_test.go type StubClock (line 22) | type StubClock struct method Now (line 26) | func (mt StubClock) Now() time.Time { function Test_MetricWindow (line 30) | func Test_MetricWindow(t *testing.T) { FILE: pkg/job/listmetrics/processor.go type ProcessingParams (line 17) | type ProcessingParams struct FILE: pkg/job/maxdimassociator/associator.go type Associator (line 36) | type Associator struct method AssociateMetricToResource (line 145) | func (assoc Associator) AssociateMetricToResource(cwMetric *model.Metr... type dimensionsRegexpMapping (line 44) | type dimensionsRegexpMapping struct method toString (line 55) | func (rm dimensionsRegexpMapping) toString() string { function NewAssociator (line 73) | func NewAssociator(logger *slog.Logger, dimensionsRegexps []model.Dimens... function buildLabelsMap (line 228) | func buildLabelsMap(cwMetric *model.Metric, regexpMapping *dimensionsReg... function fixDimension (line 247) | func fixDimension(namespace string, dim model.Dimension) (model.Dimensio... function containsAll (line 269) | func containsAll(a, b []string) bool { FILE: pkg/job/maxdimassociator/associator_api_gateway_test.go function TestAssociatorAPIGateway (line 47) | func TestAssociatorAPIGateway(t *testing.T) { FILE: pkg/job/maxdimassociator/associator_client_vpn_test.go function TestAssociatorClientVPN (line 30) | func TestAssociatorClientVPN(t *testing.T) { FILE: pkg/job/maxdimassociator/associator_ddosprotection_test.go function TestAssociatorDDoSProtection (line 40) | func TestAssociatorDDoSProtection(t *testing.T) { FILE: pkg/job/maxdimassociator/associator_directoryservice_test.go function TestAssociatorDirectoryService (line 30) | func TestAssociatorDirectoryService(t *testing.T) { FILE: pkg/job/maxdimassociator/associator_dx_test.go function TestAssociatorDX (line 30) | func TestAssociatorDX(t *testing.T) { FILE: pkg/job/maxdimassociator/associator_ec2_test.go function TestAssociatorEC2 (line 40) | func TestAssociatorEC2(t *testing.T) { FILE: pkg/job/maxdimassociator/associator_ec_test.go function TestAssociatorEC (line 40) | func TestAssociatorEC(t *testing.T) { FILE: pkg/job/maxdimassociator/associator_ecs_test.go function TestAssociatorECS (line 46) | func TestAssociatorECS(t *testing.T) { FILE: pkg/job/maxdimassociator/associator_event_roles_test.go function TestAssociatorEventRule (line 39) | func TestAssociatorEventRule(t *testing.T) { FILE: pkg/job/maxdimassociator/associator_globalaccelerator_test.go function TestAssociatorGlobalAccelerator (line 46) | func TestAssociatorGlobalAccelerator(t *testing.T) { FILE: pkg/job/maxdimassociator/associator_gwlb_test.go function TestAssociatorGwlb (line 46) | func TestAssociatorGwlb(t *testing.T) { FILE: pkg/job/maxdimassociator/associator_ipam_test.go function TestAssociatorIpam (line 34) | func TestAssociatorIpam(t *testing.T) { FILE: pkg/job/maxdimassociator/associator_kms_test.go function TestAssociatorKMS (line 30) | func TestAssociatorKMS(t *testing.T) { FILE: pkg/job/maxdimassociator/associator_lambda_test.go function TestAssociatorLambda (line 32) | func TestAssociatorLambda(t *testing.T) { FILE: pkg/job/maxdimassociator/associator_logging_test.go function TestAssociatorLogging (line 26) | func TestAssociatorLogging(t *testing.T) { FILE: pkg/job/maxdimassociator/associator_logs_test.go function TestAssociatorLogs (line 40) | func TestAssociatorLogs(t *testing.T) { FILE: pkg/job/maxdimassociator/associator_mediaconvert_test.go function TestAssociatorMediaConvert (line 40) | func TestAssociatorMediaConvert(t *testing.T) { FILE: pkg/job/maxdimassociator/associator_memorydb_test.go function TestAssociatorMemoryDB (line 40) | func TestAssociatorMemoryDB(t *testing.T) { FILE: pkg/job/maxdimassociator/associator_mq_test.go function TestAssociatorMQ (line 40) | func TestAssociatorMQ(t *testing.T) { FILE: pkg/job/maxdimassociator/associator_qldb_test.go function TestAssociatorQLDB (line 30) | func TestAssociatorQLDB(t *testing.T) { FILE: pkg/job/maxdimassociator/associator_redshift_serverless_test.go function TestAssociatorRedshiftServerless (line 40) | func TestAssociatorRedshiftServerless(t *testing.T) { FILE: pkg/job/maxdimassociator/associator_sagemaker_endpoint_test.go function TestAssociatorSagemakerEndpoint (line 40) | func TestAssociatorSagemakerEndpoint(t *testing.T) { FILE: pkg/job/maxdimassociator/associator_sagemaker_inf_component_test.go function TestAssociatorSagemakerInfComponentJob (line 34) | func TestAssociatorSagemakerInfComponentJob(t *testing.T) { FILE: pkg/job/maxdimassociator/associator_sagemaker_inf_rec_test.go function TestAssociatorSagemakerInfRecJob (line 34) | func TestAssociatorSagemakerInfRecJob(t *testing.T) { FILE: pkg/job/maxdimassociator/associator_sagemaker_pipeline_test.go function TestAssociatorSagemakerPipeline (line 40) | func TestAssociatorSagemakerPipeline(t *testing.T) { FILE: pkg/job/maxdimassociator/associator_sagemaker_processing_test.go function TestAssociatorSagemakerProcessingJob (line 34) | func TestAssociatorSagemakerProcessingJob(t *testing.T) { FILE: pkg/job/maxdimassociator/associator_sagemaker_test.go function TestAssociatorSagemaker (line 58) | func TestAssociatorSagemaker(t *testing.T) { FILE: pkg/job/maxdimassociator/associator_sagemaker_training_test.go function TestAssociatorSagemakerTrainingJob (line 34) | func TestAssociatorSagemakerTrainingJob(t *testing.T) { FILE: pkg/job/maxdimassociator/associator_sagemaker_transform_test.go function TestAssociatorSagemakerTransformJob (line 34) | func TestAssociatorSagemakerTransformJob(t *testing.T) { FILE: pkg/job/resourcemetadata/resource.go type Resource (line 21) | type Resource struct type Resources (line 31) | type Resources struct type MetricResourceEnricher (line 36) | type MetricResourceEnricher interface FILE: pkg/job/scrape.go function ScrapeAwsData (line 30) | func ScrapeAwsData( FILE: pkg/job/scraper.go type Scraper (line 27) | type Scraper struct method Scrape (line 71) | func (s Scraper) Scrape(ctx context.Context) ([]model.TaggedResourceRe... type runnerFactory (line 33) | type runnerFactory interface type ResourceMetadataRunner (line 39) | type ResourceMetadataRunner interface type CloudwatchRunner (line 43) | type CloudwatchRunner interface function NewScraper (line 47) | func NewScraper(logger *slog.Logger, type ErrorType (line 58) | type ErrorType type Account (line 66) | type Account struct function jobConfigVisitor (line 205) | func jobConfigVisitor(jobsCfg model.JobsConfig, action func(job any, rol... function jobAction (line 224) | func jobAction(logger *slog.Logger, job any, discovery func(job model.Di... type JobContext (line 240) | type JobContext struct method ToScrapeContext (line 247) | func (jc JobContext) ToScrapeContext(customTags []model.Tag) *model.Sc... type Error (line 256) | type Error struct method ToLoggerKeyVals (line 270) | func (e Error) ToLoggerKeyVals() []interface{} { function NewError (line 262) | func NewError(context JobContext, errorType ErrorType, err error) Error { FILE: pkg/job/scraper_test.go type testRunnerFactory (line 34) | type testRunnerFactory struct method GetAccountAlias (line 41) | func (t *testRunnerFactory) GetAccountAlias(context.Context) (string, ... method GetAccount (line 45) | func (t *testRunnerFactory) GetAccount(context.Context) (string, error) { method Run (line 49) | func (t *testRunnerFactory) Run(ctx context.Context, region string, jo... method GetAccountClient (line 53) | func (t *testRunnerFactory) GetAccountClient(string, model.Role) accou... method NewResourceMetadataRunner (line 57) | func (t *testRunnerFactory) NewResourceMetadataRunner(*slog.Logger, st... method NewCloudWatchRunner (line 61) | func (t *testRunnerFactory) NewCloudWatchRunner(_ *slog.Logger, _ stri... type testMetadataRunner (line 65) | type testMetadataRunner struct method Run (line 69) | func (t testMetadataRunner) Run(ctx context.Context, region string, jo... type testCloudwatchRunner (line 73) | type testCloudwatchRunner struct method Run (line 78) | func (t testCloudwatchRunner) Run(ctx context.Context) ([]*model.Cloud... function TestScrapeRunner_Run (line 82) | func TestScrapeRunner_Run(t *testing.T) { FILE: pkg/job/static.go function runStaticJob (line 24) | func runStaticJob( function createStaticDimensions (line 71) | func createStaticDimensions(dimensions []model.Dimension) []model.Dimens... FILE: pkg/model/model.go constant DefaultPeriodSeconds (line 22) | DefaultPeriodSeconds = int64(300) constant DefaultLengthSeconds (line 23) | DefaultLengthSeconds = int64(300) type JobsConfig (line 26) | type JobsConfig struct type DiscoveryJob (line 33) | type DiscoveryJob struct method HasEnhancedMetrics (line 51) | func (d *DiscoveryJob) HasEnhancedMetrics() bool { type EnhancedMetricConfig (line 55) | type EnhancedMetricConfig struct type StaticJob (line 59) | type StaticJob struct type CustomNamespaceJob (line 69) | type CustomNamespaceJob struct type Role (line 81) | type Role struct type MetricConfig (line 86) | type MetricConfig struct type DimensionsRegexp (line 97) | type DimensionsRegexp struct type LabelSet (line 102) | type LabelSet type Tag (line 104) | type Tag struct type SearchTag (line 109) | type SearchTag struct type Dimension (line 114) | type Dimension struct type Metric (line 119) | type Metric struct type CloudwatchMetricResult (line 126) | type CloudwatchMetricResult struct type TaggedResourceResult (line 131) | type TaggedResourceResult struct type ScrapeContext (line 136) | type ScrapeContext struct type CloudwatchData (line 145) | type CloudwatchData struct type GetMetricStatisticsResult (line 168) | type GetMetricStatisticsResult struct type MetricStatisticsResult (line 173) | type MetricStatisticsResult struct type GetMetricDataProcessingParams (line 197) | type GetMetricDataProcessingParams struct type MetricMigrationParams (line 210) | type MetricMigrationParams struct type GetMetricDataResult (line 216) | type GetMetricDataResult struct type DataPoint (line 221) | type DataPoint struct type TaggedResource (line 227) | type TaggedResource struct method FilterThroughTags (line 243) | func (r TaggedResource) FilterThroughTags(filterTags []SearchTag) bool { method MetricTags (line 272) | func (r TaggedResource) MetricTags(exportedTags []string) []Tag { FILE: pkg/model/model_test.go function Test_FilterThroughTags (line 22) | func Test_FilterThroughTags(t *testing.T) { function Test_MetricTags (line 186) | func Test_MetricTags(t *testing.T) { FILE: pkg/promutil/migrate.go function BuildMetricName (line 32) | func BuildMetricName(namespace, metricName, statistic string) string { function BuildNamespaceInfoMetrics (line 70) | func BuildNamespaceInfoMetrics(tagData []model.TaggedResourceResult, met... function BuildMetrics (line 102) | func BuildMetrics(results []model.CloudwatchMetricResult, labelsSnakeCas... function statisticsInCloudwatchData (line 174) | func statisticsInCloudwatchData(d *model.CloudwatchData) []string { function getDataPoints (line 184) | func getDataPoints(cwd *model.CloudwatchData, statistic string) ([]model... function sortByTimestamp (line 253) | func sortByTimestamp(dataPoints []*model.MetricStatisticsResult) []*mode... function createPrometheusLabels (line 261) | func createPrometheusLabels(cwd *model.CloudwatchData, labelsSnakeCase b... function contextToLabels (line 289) | func contextToLabels(context *model.ScrapeContext, labelsSnakeCase bool,... function recordLabelsForMetric (line 316) | func recordLabelsForMetric(metricName string, promLabels map[string]stri... function EnsureLabelConsistencyAndRemoveDuplicates (line 332) | func EnsureLabelConsistencyAndRemoveDuplicates(metrics []*PrometheusMetr... FILE: pkg/promutil/migrate_test.go function TestBuildNamespaceInfoMetrics (line 27) | func TestBuildNamespaceInfoMetrics(t *testing.T) { function TestBuildMetrics (line 288) | func TestBuildMetrics(t *testing.T) { function Benchmark_BuildMetrics (line 1105) | func Benchmark_BuildMetrics(b *testing.B) { function TestBuildMetricName (line 1254) | func TestBuildMetricName(t *testing.T) { function Benchmark_BuildMetricName (line 1302) | func Benchmark_BuildMetricName(b *testing.B) { function replaceNaNValues (line 1345) | func replaceNaNValues(metrics []*PrometheusMetric) []*PrometheusMetric { function TestSortByTimeStamp (line 1355) | func TestSortByTimeStamp(t *testing.T) { function Test_EnsureLabelConsistencyAndRemoveDuplicates (line 1389) | func Test_EnsureLabelConsistencyAndRemoveDuplicates(t *testing.T) { FILE: pkg/promutil/prometheus.go type PrometheusMetric (line 109) | type PrometheusMetric struct type PrometheusCollector (line 117) | type PrometheusCollector struct method Describe (line 127) | func (p *PrometheusCollector) Describe(_ chan<- *prometheus.Desc) { method Collect (line 135) | func (p *PrometheusCollector) Collect(metrics chan<- prometheus.Metric) { function NewPrometheusCollector (line 121) | func NewPrometheusCollector(metrics []*PrometheusMetric) *PrometheusColl... function toConstMetrics (line 141) | func toConstMetrics(metrics []*PrometheusMetric) []prometheus.Metric { function PromString (line 181) | func PromString(text string) string { function PromStringToBuilder (line 187) | func PromStringToBuilder(text string, buf *strings.Builder) { function PromStringTag (line 207) | func PromStringTag(text string, labelsSnakeCase bool) (bool, string) { function sanitize (line 218) | func sanitize(text string) string { FILE: pkg/promutil/prometheus_test.go function TestSanitize (line 26) | func TestSanitize(t *testing.T) { function TestPromStringTag (line 50) | func TestPromStringTag(t *testing.T) { function TestNewPrometheusCollector_CanReportMetricsAndErrors (line 119) | func TestNewPrometheusCollector_CanReportMetricsAndErrors(t *testing.T) { function TestNewPrometheusCollector_CanReportMetrics (line 150) | func TestNewPrometheusCollector_CanReportMetrics(t *testing.T) {