Neven Miculinić
Which % I'm doing:
GET /users?tag=XXX
SELECT id FROM USERS WHERE tag=XXXGET /user/id
SELECT * FROM USERS WHERE id=$1[
  {
    "name": "Asub",
    "cat": "PERF",
    "ph": "B",
    "pid": 22630,
    "tid": 22630,
    "ts": 829
  },
  {
    "name": "Asub",
    "cat": "PERF",
    "ph": "E",
    "pid": 22630,
    "tid": 22630,
    "ts": 833
  }
]
| OT | OC | |
|---|---|---|
| CNCF Incubating | Organization | formerly google, now different stakeholders | 
| OT | OC | |
|---|---|---|
| CNCF Incubating | Organization | formerly google, now different stakeholders | 
| Trace API only | Feature Set | Trace & metrics API | 
| OT | OC | |
|---|---|---|
| CNCF Incubating | Organization | formerly google, now different stakeholders | 
| Trace API only | Feature Set | Trace & metrics API | 
| specified in each API call | Tracers | Set of global traces | 
| OT | OC | |
|---|---|---|
| CNCF Incubating | Organization | formerly google, now different stakeholders | 
| Trace API only | Feature Set | Trace & metrics API | 
| specified in each API call | Tracers | Set of global traces | 
| Depends on backend | Propagation format | Specified by OC standard | 
| OT | OC | |
|---|---|---|
| CNCF Incubating | Organization | formerly google, now different stakeholders | 
| Trace API only | Feature Set | Trace & metrics API | 
| specified in each API call | Tracers | Set of global traces | 
| Depends on backend | Propagation format | Specified by OC standard | 
| Evolving, some deprecated APIs | Overall feeling | More polished API, nicer to work with | 
j, err := jaeger.NewExporter(jaeger.Options{
		Endpoint:    "http://localhost:14268",
		ServiceName: "opencensus-tracing",
})
trace.RegisterExporter(exporter)ctx, span := trace.StartSpan(ctx, "some/useful/name")
defer span.End()span.AddAttribute(trace.StringAttribute("key", "value"))span.Annotate(nil, "some useful annotation")
span.Annotate(
    []trace.Attribute{trace.BoolAttribute("key", true)},
    "some useful log data",
)client = &http.Client{Transport: &ochttp.Transport{}}
http.ListenAndServe(addr, &ochttp.Handler{Handler: handler})req = req.WithContext(ctx)
resp, err := client.Do(req)func HandleXXX (w http.ResponseWriter, req *http.Request) {
    ctx := req.Context() 
    // ...
}