Skip to content

Commit

Permalink
Merge pull request vmware#2784 from embano1/issue-2783
Browse files Browse the repository at this point in the history
  • Loading branch information
embano1 authored Mar 24, 2022
2 parents 34f9952 + c5826b8 commit c294107
Show file tree
Hide file tree
Showing 2 changed files with 60 additions and 2 deletions.
58 changes: 58 additions & 0 deletions examples/alarms/main.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
package main

import (
"context"
"flag"
"fmt"

"github.com/dougm/pretty"

"github.com/vmware/govmomi/examples"
"github.com/vmware/govmomi/property"
"github.com/vmware/govmomi/vim25"
"github.com/vmware/govmomi/vim25/methods"
"github.com/vmware/govmomi/vim25/mo"
"github.com/vmware/govmomi/vim25/types"
)

func main() {
var limit int
flag.IntVar(&limit, "limit", 10, "maximum number of alarms to retrieve")

examples.Run(func(ctx context.Context, c *vim25.Client) error {
pc := property.DefaultCollector(c)
am := c.ServiceContent.AlarmManager

fmt.Println("retrieving all alarms")
alarms, err := methods.GetAlarm(ctx, c, &types.GetAlarm{
This: *am,
Entity: nil, // if not set, alarms are returned for all visible entities
})
if err != nil {
return fmt.Errorf("could not get alarms: %w", err)
}

counter := 0
for _, a := range alarms.Returnval {
counter++
fmt.Printf("retrieving details for alarm %q\n", a.String())

var info mo.Alarm
if err = pc.RetrieveOne(ctx, a, nil, &info); err != nil {
return fmt.Errorf("retrieve alarm info: %w", err)
}

_, err = pretty.Println(info)
if err != nil {
return fmt.Errorf("print alarm: %w", err)
}

if counter == limit {
fmt.Printf("reached maximum number of alarms to read (limit=%d)\n", limit)
break
}
}

return nil
})
}
4 changes: 2 additions & 2 deletions govc/test/vcsim.bats
Original file line number Diff line number Diff line change
Expand Up @@ -35,8 +35,8 @@ EOF

# compile + run examples against vcsim
for main in ../../examples/*/main.go ; do
# TODO: #2567
if [[ $main =~ "task" ]]; then
# TODO: #2567 #2476
if [[ $main =~ task|alarm ]]; then
continue
fi
run go run "$main" -insecure -url "$GOVC_URL"
Expand Down

0 comments on commit c294107

Please sign in to comment.