istio: istio.io/istio/mixer/adapter/solarwinds/config Index | Files

package config

import "istio.io/istio/mixer/adapter/solarwinds/config"

Index

Package Files

config.pb.go

Variables

var (
    ErrInvalidLengthConfig = fmt.Errorf("proto: negative length found during unmarshaling")
    ErrIntOverflowConfig   = fmt.Errorf("proto: integer overflow")
)

type Params Uses

type Params struct {
    // AppOptics Access Token needed to send metrics to AppOptics. If no access token is given then metrics
    // will NOT be shipped to AppOptics
    AppopticsAccessToken string `protobuf:"bytes,1,opt,name=appoptics_access_token,json=appopticsAccessToken,proto3" json:"appoptics_access_token,omitempty"`
    // Optional. Max batch size of metrics to be sent to AppOptics.
    // AppOptics does not allow batch size greater than 1000.
    // If this is unspecified or given a value 0 explicitly, a default batch size of 1000 will be used.
    AppopticsBatchSize int32 `protobuf:"varint,2,opt,name=appoptics_batch_size,json=appopticsBatchSize,proto3" json:"appoptics_batch_size,omitempty"`
    // Papertrail url to ship logs to. If no papertrail url is given then the logs will NOT be shipped but rather
    // dropped.
    PapertrailUrl string `protobuf:"bytes,3,opt,name=papertrail_url,json=papertrailUrl,proto3" json:"papertrail_url,omitempty"`
    // This is the duration for which logs will be persisted locally until it is shipped to papertrail in the event
    // of a network failure. Default value is 1 hour.
    PapertrailLocalRetentionDuration *time.Duration `protobuf:"bytes,4,opt,name=papertrail_local_retention_duration,json=papertrailLocalRetentionDuration,proto3,stdduration" json:"papertrail_local_retention_duration,omitempty"`
    // A map of Istio metric name to solarwinds metric info.
    Metrics map[string]*Params_MetricInfo `protobuf:"bytes,5,rep,name=metrics,proto3" json:"metrics,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
    // A map of Istio logentry name to solarwinds log info.
    Logs map[string]*Params_LogInfo `protobuf:"bytes,6,rep,name=logs,proto3" json:"logs,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
}

Configuration format for the `solarwinds` adapter.

Example config usage: “`yaml apiVersion: "config.istio.io/v1alpha2" kind: handler metadata:

name: solarwinds
namespace: istio-system

spec:

compiledAdapter: solarwinds
params:
  appoptics_access_token: <APPOPTICS SAMPLE TOKEN>
  papertrail_url: <PAPERTRAIL URL>
  papertrail_local_retention_duration: <RETENTION PERIOD FOR LOGS LOCALLY, Optional>
  metrics:
    requestcount.metric.istio-system:
      label_names:
      - source_service
      - source_version
      - destination_service
      - destination_version
      - response_code
    requestduration.metric.istio-system:
      label_names:
      - source_service
      - source_version
      - destination_service
      - destination_version
      - response_code
    requestsize.metric.istio-system:
      label_names:
      - source_service
      - source_version
      - destination_service
      - destination_version
      - response_code
    responsesize.metric.istio-system:
      label_names:
      - source_service
      - source_version
      - destination_service
      - destination_version
      - response_code
    tcpbytesent.metric.istio-system:
      label_names:
      - source_service
      - source_version
      - destination_service
      - destination_version
    tcpbytereceived.metric.istio-system:
      label_names:
      - source_service
      - source_version
      - destination_service
      - destination_version
  logs:
    solarwindslogentry.logentry.istio-system:
      payloadTemplate: '{{or (.originIp) "-"}} - {{or (.sourceUser) "-"}} [{{or (.timestamp.Format "2006-01-02T15:04:05Z07:00") "-"}}] "{{or (.method) "-"}} {{or (.url) "-"}} {{or (.protocol) "-"}}" {{or (.responseCode) "-"}} {{or (.responseSize) "-"}}'

“`

func (*Params) Descriptor Uses

func (*Params) Descriptor() ([]byte, []int)

func (*Params) Marshal Uses

func (m *Params) Marshal() (dAtA []byte, err error)

func (*Params) MarshalTo Uses

func (m *Params) MarshalTo(dAtA []byte) (int, error)

func (*Params) MarshalToSizedBuffer Uses

func (m *Params) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*Params) ProtoMessage Uses

func (*Params) ProtoMessage()

func (*Params) Reset Uses

func (m *Params) Reset()

func (*Params) Size Uses

func (m *Params) Size() (n int)

func (*Params) String Uses

func (this *Params) String() string

func (*Params) Unmarshal Uses

func (m *Params) Unmarshal(dAtA []byte) error

func (*Params) XXX_DiscardUnknown Uses

func (m *Params) XXX_DiscardUnknown()

func (*Params) XXX_Marshal Uses

func (m *Params) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Params) XXX_Merge Uses

func (m *Params) XXX_Merge(src proto.Message)

func (*Params) XXX_Size Uses

func (m *Params) XXX_Size() int

func (*Params) XXX_Unmarshal Uses

func (m *Params) XXX_Unmarshal(b []byte) error

type Params_LogInfo Uses

type Params_LogInfo struct {
    // Optional. A golang text/template template (more details about golang text/template's templating can be
    // found here: https://golang.org/pkg/text/template/) that will be executed to construct the payload for
    // this log entry.
    // An example template that could be used:
    // {{or (.originIp) "-"}} - {{or (.sourceUser) "-"}} [{{or (.timestamp.Format "2006-01-02T15:04:05Z07:00") "-"}}] "{{or (.method) "-"}} {{or (.url) "-"}} {{or (.protocol) "-"}}" {{or (.responseCode) "-"}} {{or (.responseSize) "-"}}
    // A sample log that will be created after parsing the template with appropriate variables will look like this:
    // Jan 23 21:53:02 istio-mixer-57d88dc4b4-rbgmc istio: 10.32.0.15 - kubernetes://istio-ingress-78545c5bc9-wbr6g.istio-system [2018-01-24T02:53:02Z] "GET /productpage http" 200 5599
    // It will be given the full set of variables for the log to use to construct its result.
    // If it is not provided, a default template in place will be used.
    PayloadTemplate string `protobuf:"bytes,1,opt,name=payload_template,json=payloadTemplate,proto3" json:"payload_template,omitempty"`
}

Describes how to represent an Istio log entry in Solarwinds AppOptics

func (*Params_LogInfo) Descriptor Uses

func (*Params_LogInfo) Descriptor() ([]byte, []int)

func (*Params_LogInfo) Marshal Uses

func (m *Params_LogInfo) Marshal() (dAtA []byte, err error)

func (*Params_LogInfo) MarshalTo Uses

func (m *Params_LogInfo) MarshalTo(dAtA []byte) (int, error)

func (*Params_LogInfo) MarshalToSizedBuffer Uses

func (m *Params_LogInfo) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*Params_LogInfo) ProtoMessage Uses

func (*Params_LogInfo) ProtoMessage()

func (*Params_LogInfo) Reset Uses

func (m *Params_LogInfo) Reset()

func (*Params_LogInfo) Size Uses

func (m *Params_LogInfo) Size() (n int)

func (*Params_LogInfo) String Uses

func (this *Params_LogInfo) String() string

func (*Params_LogInfo) Unmarshal Uses

func (m *Params_LogInfo) Unmarshal(dAtA []byte) error

func (*Params_LogInfo) XXX_DiscardUnknown Uses

func (m *Params_LogInfo) XXX_DiscardUnknown()

func (*Params_LogInfo) XXX_Marshal Uses

func (m *Params_LogInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Params_LogInfo) XXX_Merge Uses

func (m *Params_LogInfo) XXX_Merge(src proto.Message)

func (*Params_LogInfo) XXX_Size Uses

func (m *Params_LogInfo) XXX_Size() int

func (*Params_LogInfo) XXX_Unmarshal Uses

func (m *Params_LogInfo) XXX_Unmarshal(b []byte) error

type Params_MetricInfo Uses

type Params_MetricInfo struct {
    // The names of labels to use: these need to match the dimensions of the Istio metric.
    LabelNames []string `protobuf:"bytes,1,rep,name=label_names,json=labelNames,proto3" json:"label_names,omitempty"`
}

Describes how to represent an Istio metric in Solarwinds AppOptics

func (*Params_MetricInfo) Descriptor Uses

func (*Params_MetricInfo) Descriptor() ([]byte, []int)

func (*Params_MetricInfo) Marshal Uses

func (m *Params_MetricInfo) Marshal() (dAtA []byte, err error)

func (*Params_MetricInfo) MarshalTo Uses

func (m *Params_MetricInfo) MarshalTo(dAtA []byte) (int, error)

func (*Params_MetricInfo) MarshalToSizedBuffer Uses

func (m *Params_MetricInfo) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*Params_MetricInfo) ProtoMessage Uses

func (*Params_MetricInfo) ProtoMessage()

func (*Params_MetricInfo) Reset Uses

func (m *Params_MetricInfo) Reset()

func (*Params_MetricInfo) Size Uses

func (m *Params_MetricInfo) Size() (n int)

func (*Params_MetricInfo) String Uses

func (this *Params_MetricInfo) String() string

func (*Params_MetricInfo) Unmarshal Uses

func (m *Params_MetricInfo) Unmarshal(dAtA []byte) error

func (*Params_MetricInfo) XXX_DiscardUnknown Uses

func (m *Params_MetricInfo) XXX_DiscardUnknown()

func (*Params_MetricInfo) XXX_Marshal Uses

func (m *Params_MetricInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Params_MetricInfo) XXX_Merge Uses

func (m *Params_MetricInfo) XXX_Merge(src proto.Message)

func (*Params_MetricInfo) XXX_Size Uses

func (m *Params_MetricInfo) XXX_Size() int

func (*Params_MetricInfo) XXX_Unmarshal Uses

func (m *Params_MetricInfo) XXX_Unmarshal(b []byte) error

Package config imports 11 packages (graph) and is imported by 5 packages. Updated 2019-10-12. Refresh now. Tools for package owners.