Skip to content
This repository was archived by the owner on Oct 3, 2023. It is now read-only.

Commit 17bf612

Browse files
authored
Add a migration guide from Stackdriver Trace (#90)
* Add a migration guide for users who were using Stackdriver Trace request tracing * Fix php markup style * Add section on configuring the sampler
1 parent c9f5c9e commit 17bf612

2 files changed

Lines changed: 122 additions & 0 deletions

File tree

Lines changed: 112 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,112 @@
1+
---
2+
title: "Migrating to OpenCensus from Stackdriver Trace V1"
3+
date: "2017-12-15"
4+
type: page
5+
menu:
6+
main:
7+
parent: "Migration Guide"
8+
---
9+
10+
The Stackdriver Trace library (`google/cloud-trace`) prior to v0.4.0 (v0.47.0
11+
for the umbrella `google/cloud` package) provided application tracing
12+
integration. Version v0.4.0 removed this capability and instead defers to the
13+
`opencensus/opencensus` package from application integration.
14+
15+
## Installation
16+
17+
1. Add OpenCensus to your package.json:
18+
19+
```
20+
$ composer require opencensus/opencensus
21+
```
22+
23+
2. Ensure `google/cloud-trace` is >= v0.4.0 or `google/cloud` is >= 0.47.0:
24+
25+
```
26+
// in composer.json
27+
...
28+
"require": {
29+
"google/cloud-trace": "^0.4.0",
30+
// OR
31+
"google/cloud": "^0.47.0"
32+
}
33+
...
34+
```
35+
36+
3. Update your composer packages:
37+
38+
```
39+
$ composer update
40+
```
41+
42+
## Renamed Components
43+
44+
Between the Stackdriver Trace implementation and OpenCensus, most changes are
45+
simple renames.
46+
47+
| Old Name | New Name |
48+
| -------- | -------- |
49+
| `Google\Cloud\Trace\RequestTracer` | `OpenCensus\Trace\Tracer` |
50+
| `Google\Cloud\Trace\Sampler\AlwaysOffSampler` | `OpenCensus\Trace\Sampler\NeverSampleSampler` |
51+
| `Google\Cloud\Trace\Sampler\AlwaysOnSampler` | `OpenCensus\Trace\Sampler\AlwaysSampleSampler` |
52+
| `Google\Cloud\Trace\Sampler\QpsSampler` | `OpenCensus\Trace\Sampler\QpsSampler` |
53+
| `Google\Cloud\Trace\Sampler\RandomSampler` | `OpenCensus\Trace\Sampler\ProbabilitySampler` |
54+
| `Google\Cloud\Trace\Reporter\AsyncReporter` | `OpenCensus\Trace\Exporter\StackdriverExporter` |
55+
| `Google\Cloud\Trace\Reporter\EchoReporter` | `OpenCensus\Trace\Exporter\EchoExporter` |
56+
| `Google\Cloud\Trace\Reporter\FileReporter` | `OpenCensus\Trace\Exporter\FileExporter` |
57+
| `Google\Cloud\Trace\Reporter\NullReporter` | `OpenCensus\Trace\Exporter\NullExporter` |
58+
| `Google\Cloud\Trace\Reporter\SyncReporter` | `OpenCensus\Trace\Exporter\StackdriverExporter` |
59+
60+
## Setup
61+
62+
In Stackdriver Trace:
63+
64+
```php
65+
<?php
66+
use Google\Cloud\Trace\TraceClient;
67+
use Google\Cloud\Trace\RequestTracer;
68+
69+
$trace = new TraceClient();
70+
$reporter = $trace->reporter();
71+
RequestTracer::start($reporter);
72+
```
73+
In OpenCensus:
74+
75+
```php
76+
<?php
77+
use OpenCensus\Trace\Tracer;
78+
use OpenCensus\Trace\Exporter\StackdriverExporter;
79+
80+
Tracer::start(new StackdriverExporter(['async' => true]));
81+
```
82+
83+
## Configuration
84+
85+
### Sampler
86+
87+
If you configure a sampler, you can no longer specify sampler configuration as
88+
an array -- you can only provide a `SamplerInterface` instance.
89+
90+
In Stackdriver Trace:
91+
92+
```php
93+
<?php
94+
95+
RequestTracer::start($reporter, [
96+
'sampler' => [
97+
'type' => 'random',
98+
'rate' => 0.2
99+
]
100+
]);
101+
```
102+
103+
In OpenCensus:
104+
105+
```php
106+
<?php
107+
use OpenCensus\Trace\Sampler\ProbabilitySampler;
108+
109+
Tracer::start($reporter, [
110+
'sampler' => new ProbabilitySampler(0.2)
111+
]);
112+
```

docs/content/migration-guide.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
---
2+
title: "Migration Guide"
3+
date: "2017-12-01"
4+
type: page
5+
menu:
6+
main:
7+
weight: -90
8+
---
9+
10+
[Migrating from Stackdriver Trace](migrating-stackdriver-trace)

0 commit comments

Comments
 (0)