github.com/opentelekomcloud/gophertelekomcloud@v0.9.3/openstack/lts/v2/groups/ListLogGroups.go (about) 1 package groups 2 3 import ( 4 "github.com/opentelekomcloud/gophertelekomcloud" 5 "github.com/opentelekomcloud/gophertelekomcloud/internal/extract" 6 ) 7 8 func ListLogGroups(client *golangsdk.ServiceClient) ([]LogGroup, error) { 9 // GET /v2/{project_id}/groups 10 raw, err := client.Get(client.ServiceURL("groups"), nil, &golangsdk.RequestOpts{ 11 MoreHeaders: map[string]string{ 12 "content-type": "application/json", 13 }, 14 }) 15 if err != nil { 16 return nil, err 17 } 18 19 var res []LogGroup 20 err = extract.IntoSlicePtr(raw.Body, &res, "log_groups") 21 return res, err 22 } 23 24 type LogGroup struct { 25 // Time when a log group was created. 26 CreationTime int64 `json:"creation_time"` 27 // Log group name. 28 // Minimum length: 1 character 29 // Maximum length: 64 characters 30 LogGroupName string `json:"log_group_name"` 31 // Log group ID. 32 // Value length: 36 characters 33 LogGroupId string `json:"log_group_id"` 34 // Log retention duration, in days (fixed to 7 days). 35 TTLInDays int `json:"ttl_in_days"` 36 // Log group tag. 37 Tag map[string]string `json:"tag,omitempty"` 38 }