requestid

package
v0.0.0-...-cb210e0 Latest Latest
Warning

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

Go to latest
Published: Mar 8, 2019 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Overview

Copyright 2017 Northern.tech AS

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Copyright 2018 Northern.tech AS

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Copyright 2017 Northern.tech AS

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Index

Constants

View Source
const RequestIdHeader = "X-MEN-RequestID"

Variables

This section is empty.

Functions

func FromContext

func FromContext(ctx context.Context) string

FromContext extracts current request Id from context.Context

func GetReqId

func GetReqId(r *rest.Request) string

GetReqId helper for retrieving current request Id

func SetReqId

func SetReqId(r *rest.Request, reqid string) *rest.Request

SetReqId is a helper for setting request ID in request context

func WithContext

func WithContext(ctx context.Context, reqid string) context.Context

WithContext adds request to context `ctx` and returns the resulting context.

Types

type ApiRequester

type ApiRequester interface {
	Do(r *http.Request) (*http.Response, error)
}

type RequestIdMiddleware

type RequestIdMiddleware struct {
}

RequestIdMiddleware sets the X-MEN-RequestID header if it's not present, and and adds the request id to the request's logger's context.

func (*RequestIdMiddleware) MiddlewareFunc

func (mw *RequestIdMiddleware) MiddlewareFunc(h rest.HandlerFunc) rest.HandlerFunc

MiddlewareFunc makes RequestIdMiddleware implement the Middleware interface.

type TrackingApiClient

type TrackingApiClient struct {
	http.Client
	// contains filtered or unexported fields
}

TrackingApiClient wrapper for http.Client for sending http requests to outside services with a given request id

func NewTrackingApiClient

func NewTrackingApiClient(reqid string) *TrackingApiClient

func (*TrackingApiClient) Do

do send a request with a request id

Jump to

Keyboard shortcuts

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