mirror of
https://github.com/fnproject/fn.git
synced 2022-10-28 21:29:17 +03:00
opentracing -> opencensus (#802)
* update vendor directory, add go.opencensus.io * update imports * oops * s/opentracing/opencensus/ & remove prometheus / zipkin stuff & remove old stats * the dep train rides again * fix gin build * deps from last guy * start in on the agent metrics * she builds * remove tags for now, cardinality error is fussing. subscribe instead of register * update to patched version of opencensus to proceed for now TODO switch to a release * meh fix imports * println debug the bad boys * lace it with the tags * update deps again * fix all inconsistent cardinality errors * add our own logger * fix init * fix oom measure * remove bugged removal code * fix s3 measures * fix prom handler nil
This commit is contained in:
@@ -7,8 +7,9 @@ import (
|
||||
"io"
|
||||
"net/http"
|
||||
|
||||
"go.opencensus.io/trace"
|
||||
|
||||
"github.com/fnproject/fn/api/models"
|
||||
opentracing "github.com/opentracing/opentracing-go"
|
||||
)
|
||||
|
||||
// HTTPProtocol converts stdin/stdout streams into HTTP/1.1 compliant
|
||||
@@ -23,8 +24,8 @@ type HTTPProtocol struct {
|
||||
func (p *HTTPProtocol) IsStreamable() bool { return true }
|
||||
|
||||
func (h *HTTPProtocol) Dispatch(ctx context.Context, ci CallInfo, w io.Writer) error {
|
||||
span, ctx := opentracing.StartSpanFromContext(ctx, "dispatch_http")
|
||||
defer span.Finish()
|
||||
ctx, span := trace.StartSpan(ctx, "dispatch_http")
|
||||
defer span.End()
|
||||
|
||||
req := ci.Request()
|
||||
|
||||
@@ -36,23 +37,23 @@ func (h *HTTPProtocol) Dispatch(ctx context.Context, ci CallInfo, w io.Writer) e
|
||||
req.Header.Set("FN_REQUEST_URL", ci.RequestURL())
|
||||
req.Header.Set("FN_CALL_ID", ci.CallID())
|
||||
|
||||
span, _ = opentracing.StartSpanFromContext(ctx, "dispatch_http_write_request")
|
||||
_, span = trace.StartSpan(ctx, "dispatch_http_write_request")
|
||||
// req.Write handles if the user does not specify content length
|
||||
err := req.Write(h.in)
|
||||
span.Finish()
|
||||
span.End()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
span, _ = opentracing.StartSpanFromContext(ctx, "dispatch_http_read_response")
|
||||
_, span = trace.StartSpan(ctx, "dispatch_http_read_response")
|
||||
resp, err := http.ReadResponse(bufio.NewReader(h.out), ci.Request())
|
||||
span.Finish()
|
||||
span.End()
|
||||
if err != nil {
|
||||
return models.NewAPIError(http.StatusBadGateway, fmt.Errorf("invalid http response from function err: %v", err))
|
||||
}
|
||||
|
||||
span, _ = opentracing.StartSpanFromContext(ctx, "dispatch_http_write_response")
|
||||
defer span.Finish()
|
||||
_, span = trace.StartSpan(ctx, "dispatch_http_write_response")
|
||||
defer span.End()
|
||||
|
||||
rw, ok := w.(http.ResponseWriter)
|
||||
if !ok {
|
||||
|
||||
@@ -9,8 +9,9 @@ import (
|
||||
"net/http"
|
||||
"sync"
|
||||
|
||||
"go.opencensus.io/trace"
|
||||
|
||||
"github.com/fnproject/fn/api/models"
|
||||
opentracing "github.com/opentracing/opentracing-go"
|
||||
)
|
||||
|
||||
var (
|
||||
@@ -87,26 +88,26 @@ func (h *JSONProtocol) writeJSONToContainer(ci CallInfo) error {
|
||||
}
|
||||
|
||||
func (h *JSONProtocol) Dispatch(ctx context.Context, ci CallInfo, w io.Writer) error {
|
||||
span, ctx := opentracing.StartSpanFromContext(ctx, "dispatch_json")
|
||||
defer span.Finish()
|
||||
ctx, span := trace.StartSpan(ctx, "dispatch_json")
|
||||
defer span.End()
|
||||
|
||||
span, _ = opentracing.StartSpanFromContext(ctx, "dispatch_json_write_request")
|
||||
_, span = trace.StartSpan(ctx, "dispatch_json_write_request")
|
||||
err := h.writeJSONToContainer(ci)
|
||||
span.Finish()
|
||||
span.End()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
span, _ = opentracing.StartSpanFromContext(ctx, "dispatch_json_read_response")
|
||||
_, span = trace.StartSpan(ctx, "dispatch_json_read_response")
|
||||
var jout jsonOut
|
||||
err = json.NewDecoder(h.out).Decode(&jout)
|
||||
span.Finish()
|
||||
span.End()
|
||||
if err != nil {
|
||||
return models.NewAPIError(http.StatusBadGateway, fmt.Errorf("invalid json response from function err: %v", err))
|
||||
}
|
||||
|
||||
span, _ = opentracing.StartSpanFromContext(ctx, "dispatch_json_write_response")
|
||||
defer span.Finish()
|
||||
_, span = trace.StartSpan(ctx, "dispatch_json_write_response")
|
||||
defer span.End()
|
||||
|
||||
rw, ok := w.(http.ResponseWriter)
|
||||
if !ok {
|
||||
|
||||
Reference in New Issue
Block a user