aggregationProfiles

package
v1.14.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 15, 2025 License: Apache-2.0, Apache-2.0 Imports: 15 Imported by: 2

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Create

func Create(r *http.Request, cfg config.Config) (int, http.Header, []byte, error)

Create a new metric profile

func Delete

func Delete(r *http.Request, cfg config.Config) (int, http.Header, []byte, error)

Delete metric profile based on id

func HandleSubrouter

func HandleSubrouter(s *mux.Router, confhandler *respond.ConfHandler)

HandleSubrouter uses the subrouter for a specific calls and creates a tree of sorts handling each route with a different subrouter

func List

func List(r *http.Request, cfg config.Config) (int, http.Header, []byte, error)

List the existing aggregation profiles for the tenant making the request Also there is an optional url param "name" to filter results by

func ListOne

func ListOne(r *http.Request, cfg config.Config) (int, http.Header, []byte, error)

ListOne handles the listing of one specific profile based on its given id

func Options

func Options(r *http.Request, cfg config.Config) (int, http.Header, []byte, error)

Options implements the http option request

func Update

func Update(r *http.Request, cfg config.Config) (int, http.Header, []byte, error)

Update function to update contents of an existing aggregation profile

Types

type AggProfile

type AggProfile struct {
	ID            string        `bson:"id" json:"id"`
	DateInt       int           `bson:"date_integer" json:"-"`
	Date          string        `bson:"date" json:"date"`
	Name          string        `bson:"name" json:"name"`
	Namespace     string        `bson:"namespace" json:"namespace"`
	EndpointGroup string        `bson:"endpoint_group" json:"endpoint_group"`
	MetricOp      string        `bson:"metric_operation" json:"metric_operation"`
	ProfileOp     string        `bson:"profile_operation" json:"profile_operation"`
	MetricProf    MetricProfile `bson:"metric_profile" json:"metric_profile"`
	Groups        []Group       `bson:"groups" json:"groups"`
}

AggProfile struct to retrieve and insert aggregation profiles in mongo

type Group

type Group struct {
	Name     string    `bson:"name" json:"name"`
	Op       string    `bson:"operation" json:"operation"`
	Services []Service `bson:"services" json:"services"`
}

Group struct to represent groupings

type Links struct {
	Self string `json:"self"`
}

Links struct to hold links

type MetricProfile

type MetricProfile struct {
	Name string `bson:"name" json:"name"`
	ID   string `bson:"id" json:"id"`
}

MetricProfile is just a reference struct holding the name and the uuid of the profile

type SelfReference

type SelfReference struct {
	ID    string `json:"id" bson:"id,omitempty"`
	Links Links  `json:"links"`
}

SelfReference to hold links and uuid

type Service

type Service struct {
	Name string `bson:"name" json:"name"`
	Op   string `bson:"operation" json:"operation"`
}

Service struct hold information about service operations

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL