metrics return bytes instead of string for more flexibility

This commit is contained in:
davemay99 2020-10-06 10:49:15 -04:00
parent 19a075cf47
commit 18aa30c00f
3 changed files with 11 additions and 11 deletions

View File

@ -305,21 +305,20 @@ func (op *Operator) LicenseGet(q *QueryOptions) (*LicenseReply, *QueryMeta, erro
return &reply, qm, nil
}
func (op *Operator) Metrics(q *QueryOptions) (string, error) {
func (op *Operator) Metrics(q *QueryOptions) ([]byte, error) {
if q == nil {
q = &QueryOptions{}
}
metricsReader, err := op.c.rawQuery("/v1/metrics", q)
if err != nil {
return "", err
return nil, err
}
metricsBytes, err := ioutil.ReadAll(metricsReader)
if err != nil {
return "", err
return nil, err
}
metrics := string(metricsBytes[:])
return metrics, nil
return metricsBytes, nil
}

View File

@ -88,12 +88,14 @@ func (c *OperatorMetricsCommand) Run(args []string) int {
Params: params,
}
resp, err := client.Operator().Metrics(query)
bs, err := client.Operator().Metrics(query)
if err != nil {
c.Ui.Error(fmt.Sprintf("Error getting metrics: %v", err))
return 1
}
resp := string(bs[:])
c.Ui.Output(resp)
return 0
}

View File

@ -305,21 +305,20 @@ func (op *Operator) LicenseGet(q *QueryOptions) (*LicenseReply, *QueryMeta, erro
return &reply, qm, nil
}
func (op *Operator) Metrics(q *QueryOptions) (string, error) {
func (op *Operator) Metrics(q *QueryOptions) ([]byte, error) {
if q == nil {
q = &QueryOptions{}
}
metricsReader, err := op.c.rawQuery("/v1/metrics", q)
if err != nil {
return "", err
return nil, err
}
metricsBytes, err := ioutil.ReadAll(metricsReader)
if err != nil {
return "", err
return nil, err
}
metrics := string(metricsBytes[:])
return metrics, nil
return metricsBytes, nil
}