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  }