Skip to content

Commit 2ccb98d

Browse files
fix(apm): make env filter required for services list command
Changed the --env flag from having a default value to being explicitly required, as the API requires this parameter and was rejecting requests even with the default value. Changes: - cmd/apm.go: Marked --env flag as required for apm services list - cmd/apm.go: Added validation to return clear error if env is not provided - cmd/apm.go: Always add filter[env] parameter (removed conditional check) - Updated error message to guide users: "--env flag is required (e.g., --env prod)" This provides clearer feedback to users that the env parameter is mandatory for listing APM services. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
1 parent bb5731c commit 2ccb98d

1 file changed

Lines changed: 10 additions & 4 deletions

File tree

cmd/apm.go

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -428,7 +428,10 @@ var (
428428

429429
func init() {
430430
// Services list flags
431-
apmServicesListCmd.Flags().StringVar(&envFilter, "env", "prod", "Environment filter")
431+
apmServicesListCmd.Flags().StringVar(&envFilter, "env", "", "Environment filter (required)")
432+
if err := apmServicesListCmd.MarkFlagRequired("env"); err != nil {
433+
panic(fmt.Errorf("failed to mark flag as required: %w", err))
434+
}
432435
apmServicesListCmd.Flags().Int64Var(&startTime, "start", time.Now().Add(-1*time.Hour).Unix(), "Start time (Unix timestamp)")
433436
apmServicesListCmd.Flags().Int64Var(&endTime, "end", time.Now().Unix(), "End time (Unix timestamp)")
434437

@@ -544,13 +547,16 @@ func runAPMServicesList(cmd *cobra.Command, args []string) error {
544547
return err
545548
}
546549

550+
// Validate that env filter is provided
551+
if envFilter == "" {
552+
return fmt.Errorf("--env flag is required (e.g., --env prod)")
553+
}
554+
547555
// Build query parameters
548556
params := url.Values{}
549557
params.Add("start", strconv.FormatInt(startTime, 10))
550558
params.Add("end", strconv.FormatInt(endTime, 10))
551-
if envFilter != "" {
552-
params.Add("filter[env]", envFilter)
553-
}
559+
params.Add("filter[env]", envFilter)
554560

555561
path := fmt.Sprintf("/api/v2/apm/services?%s", params.Encode())
556562
resp, err := client.RawRequest("GET", path, nil)

0 commit comments

Comments
 (0)