Skip to content

Commit 0669720

Browse files
authored
feat(go): refactor initial guide pages (#14276)
1 parent b3d8602 commit 0669720

File tree

16 files changed

+681
-915
lines changed

16 files changed

+681
-915
lines changed

docs/platforms/go/common/configuration/options.mdx

Lines changed: 112 additions & 119 deletions
Original file line numberDiff line numberDiff line change
@@ -9,117 +9,119 @@ description: "Learn more about how the SDK can be configured via options. These
99
```go
1010
// ClientOptions that configures a SDK Client
1111
type ClientOptions struct {
12-
// The DSN to use. If the DSN is not set, the client is effectively
13-
// disabled.
14-
Dsn string
15-
// In debug mode, the debug information is printed to stdout to help you
16-
// understand what Sentry is doing.
17-
Debug bool
18-
// Configures whether SDK should generate and attach stack traces to pure
19-
// capture message calls.
20-
AttachStacktrace bool
21-
// The sample rate for event submission in the range [0.0, 1.0]. By default,
22-
// all events are sent. Thus, as a historical special case, the sample rate
23-
// 0.0 is treated as if it was 1.0. To drop all events, set the DSN to the
12+
// The DSN to use. If the DSN is not set, the client is effectively
13+
// disabled.
14+
Dsn string
15+
// In debug mode, the debug information is printed to stdout to help you
16+
// understand what Sentry is doing.
17+
Debug bool
18+
// Configures whether SDK should generate and attach stack traces to pure
19+
// capture message calls.
20+
AttachStacktrace bool
21+
// The sample rate for event submission in the range [0.0, 1.0]. By default,
22+
// all events are sent. Thus, as a historical special case, the sample rate
23+
// 0.0 is treated as if it was 1.0. To drop all events, set the DSN to the
2424
// empty string.
25-
SampleRate float64
26-
// Enable performance tracing.
27-
EnableTracing bool
28-
// The sample rate for sampling traces in the range [0.0, 1.0].
29-
TracesSampleRate float64
30-
// Used to customize the sampling of traces, overrides TracesSampleRate.
31-
TracesSampler TracesSampler
32-
// The sample rate for profiling traces in the range [0.0, 1.0].
33-
// This is relative to TracesSampleRate - it is a ratio of profiled traces out of all sampled traces.
34-
ProfilesSampleRate float64
35-
// List of regexp strings that will be used to match against event's message
36-
// and if applicable, caught errors type and value.
37-
// If the match is found, then a whole event will be dropped.
38-
IgnoreErrors []string
39-
// List of regexp strings that will be used to match against a transaction's
40-
// name. If a match is found, then the transaction will be dropped.
41-
IgnoreTransactions []string
42-
// If this flag is enabled, certain personally identifiable information (PII) is added by active integrations.
43-
// By default, no such data is sent.
44-
SendDefaultPII bool
45-
// BeforeSend is called before error events are sent to Sentry.
46-
// Use it to mutate the event or return nil to discard the event.
47-
BeforeSend func(event *Event, hint *EventHint) *Event
48-
// BeforeSendTransaction is called before transaction events are sent to Sentry.
49-
// Use it to mutate the transaction or return nil to discard the transaction.
50-
BeforeSendTransaction func(event *Event, hint *EventHint) *Event
51-
// Before breadcrumb add callback.
52-
BeforeBreadcrumb func(breadcrumb *Breadcrumb, hint *BreadcrumbHint) *Breadcrumb
53-
// Integrations to be installed on the current Client, receives default
54-
// integrations.
55-
Integrations func([]Integration) []Integration
56-
// io.Writer implementation that should be used with the Debug mode.
57-
DebugWriter io.Writer
58-
// The transport to use. Defaults to HTTPTransport.
59-
Transport Transport
60-
// The server name to be reported.
61-
ServerName string
62-
// The release to be sent with events.
63-
//
64-
// Some Sentry features are built around releases, and, thus, reporting
65-
// events with a non-empty release improves the product experience. See
66-
// https://docs.sentry.io/product/releases/.
67-
//
68-
// If Release is not set, the SDK will try to derive a default value
69-
// from environment variables or the Git repository in the working
70-
// directory.
71-
//
72-
// If you distribute a compiled binary, it is recommended to set the
73-
// Release value explicitly at build time. As an example, you can use:
74-
//
75-
// go build -ldflags='-X main.release=VALUE'
76-
//
77-
// That will set the value of a predeclared variable 'release' in the
78-
// 'main' package to 'VALUE'. Then, use that variable when initializing
79-
// the SDK:
80-
//
81-
// sentry.Init(ClientOptions{Release: release})
82-
//
83-
// See https://golang.org/cmd/go/ and https://golang.org/cmd/link/ for
84-
// the official documentation of -ldflags and -X, respectively.
85-
Release string
86-
// The dist to be sent with events.
87-
Dist string
88-
// The environment to be sent with events.
89-
Environment string
90-
// Maximum number of breadcrumbs
91-
// when MaxBreadcrumbs is negative then ignore breadcrumbs.
92-
MaxBreadcrumbs int
93-
// Maximum number of spans.
94-
//
95-
// See https://develop.sentry.dev/sdk/data-model/envelopes/#size-limits for size limits
96-
// applied during event ingestion. Events that exceed these limits might get dropped.
97-
MaxSpans int
98-
// An optional pointer to http.Client that will be used with a default
99-
// HTTPTransport. Using your own client will make HTTPTransport, HTTPProxy,
100-
// HTTPSProxy and CaCerts options ignored.
101-
HTTPClient *http.Client
102-
// An optional pointer to http.Transport that will be used with a default
103-
// HTTPTransport. Using your own transport will make HTTPProxy, HTTPSProxy
104-
// and CaCerts options ignored.
105-
HTTPTransport http.RoundTripper
106-
// An optional HTTP proxy to use.
107-
// This will default to the HTTP_PROXY environment variable.
108-
HTTPProxy string
109-
// An optional HTTPS proxy to use.
110-
// This will default to the HTTPS_PROXY environment variable.
111-
// HTTPS_PROXY takes precedence over HTTP_PROXY for https requests.
112-
HTTPSProxy string
113-
// An optional set of SSL certificates to use.
114-
CaCerts *x509.CertPool
115-
// MaxErrorDepth is the maximum number of errors reported in a chain of errors.
116-
// This protects the SDK from an arbitrarily long chain of wrapped errors.
117-
//
118-
// An additional consideration is that arguably reporting a long chain of errors
119-
// is of little use when debugging production errors with Sentry. The Sentry UI
120-
// is not optimized for long chains either. The top-level error together with a
121-
// stack trace is often the most useful information.
122-
MaxErrorDepth int
25+
SampleRate float64
26+
// Enable structured logging.
27+
EnableLogs bool
28+
// Enable performance tracing.
29+
EnableTracing bool
30+
// The sample rate for sampling traces in the range [0.0, 1.0].
31+
TracesSampleRate float64
32+
// Used to customize the sampling of traces, overrides TracesSampleRate.
33+
TracesSampler TracesSampler
34+
// The sample rate for profiling traces in the range [0.0, 1.0].
35+
// This is relative to TracesSampleRate - it is a ratio of profiled traces out of all sampled traces.
36+
ProfilesSampleRate float64
37+
// List of regexp strings that will be used to match against event's message
38+
// and if applicable, caught errors type and value.
39+
// If the match is found, then a whole event will be dropped.
40+
IgnoreErrors []string
41+
// List of regexp strings that will be used to match against a transaction's
42+
// name. If a match is found, then the transaction will be dropped.
43+
IgnoreTransactions []string
44+
// If this flag is enabled, certain personally identifiable information (PII) is added by active integrations.
45+
// By default, no such data is sent.
46+
SendDefaultPII bool
47+
// BeforeSend is called before error events are sent to Sentry.
48+
// Use it to mutate the event or return nil to discard the event.
49+
BeforeSend func(event *Event, hint *EventHint) *Event
50+
// BeforeSendTransaction is called before transaction events are sent to Sentry.
51+
// Use it to mutate the transaction or return nil to discard the transaction.
52+
BeforeSendTransaction func(event *Event, hint *EventHint) *Event
53+
// Before breadcrumb add callback.
54+
BeforeBreadcrumb func(breadcrumb *Breadcrumb, hint *BreadcrumbHint) *Breadcrumb
55+
// Integrations to be installed on the current Client, receives default
56+
// integrations.
57+
Integrations func([]Integration) []Integration
58+
// io.Writer implementation that should be used with the Debug mode.
59+
DebugWriter io.Writer
60+
// The transport to use. Defaults to HTTPTransport.
61+
Transport Transport
62+
// The server name to be reported.
63+
ServerName string
64+
// The release to be sent with events.
65+
//
66+
// Some Sentry features are built around releases, and, thus, reporting
67+
// events with a non-empty release improves the product experience. See
68+
// https://docs.sentry.io/product/releases/.
69+
//
70+
// If Release is not set, the SDK will try to derive a default value
71+
// from environment variables or the Git repository in the working
72+
// directory.
73+
//
74+
// If you distribute a compiled binary, it is recommended to set the
75+
// Release value explicitly at build time. As an example, you can use:
76+
//
77+
// go build -ldflags='-X main.release=VALUE'
78+
//
79+
// That will set the value of a predeclared variable 'release' in the
80+
// 'main' package to 'VALUE'. Then, use that variable when initializing
81+
// the SDK:
82+
//
83+
// sentry.Init(ClientOptions{Release: release})
84+
//
85+
// See https://golang.org/cmd/go/ and https://golang.org/cmd/link/ for
86+
// the official documentation of -ldflags and -X, respectively.
87+
Release string
88+
// The dist to be sent with events.
89+
Dist string
90+
// The environment to be sent with events.
91+
Environment string
92+
// Maximum number of breadcrumbs
93+
// when MaxBreadcrumbs is negative then ignore breadcrumbs.
94+
MaxBreadcrumbs int
95+
// Maximum number of spans.
96+
//
97+
// See https://develop.sentry.dev/sdk/data-model/envelopes/#size-limits for size limits
98+
// applied during event ingestion. Events that exceed these limits might get dropped.
99+
MaxSpans int
100+
// An optional pointer to http.Client that will be used with a default
101+
// HTTPTransport. Using your own client will make HTTPTransport, HTTPProxy,
102+
// HTTPSProxy and CaCerts options ignored.
103+
HTTPClient *http.Client
104+
// An optional pointer to http.Transport that will be used with a default
105+
// HTTPTransport. Using your own transport will make HTTPProxy, HTTPSProxy
106+
// and CaCerts options ignored.
107+
HTTPTransport http.RoundTripper
108+
// An optional HTTP proxy to use.
109+
// This will default to the HTTP_PROXY environment variable.
110+
HTTPProxy string
111+
// An optional HTTPS proxy to use.
112+
// This will default to the HTTPS_PROXY environment variable.
113+
// HTTPS_PROXY takes precedence over HTTP_PROXY for https requests.
114+
HTTPSProxy string
115+
// An optional set of SSL certificates to use.
116+
CaCerts *x509.CertPool
117+
// MaxErrorDepth is the maximum number of errors reported in a chain of errors.
118+
// This protects the SDK from an arbitrarily long chain of wrapped errors.
119+
//
120+
// An additional consideration is that arguably reporting a long chain of errors
121+
// is of little use when debugging production errors with Sentry. The Sentry UI
122+
// is not optimized for long chains either. The top-level error together with a
123+
// stack trace is often the most useful information.
124+
MaxErrorDepth int
123125
}
124126
```
125127

@@ -129,15 +131,6 @@ By default, TLS uses the host's root CA set. If you don't have `ca-certificates`
129131

130132

131133
```go
132-
package main
133-
134-
import (
135-
"log"
136-
137-
"github.com/certifi/gocertifi"
138-
"github.com/getsentry/sentry-go"
139-
)
140-
141134
sentryClientOptions := sentry.ClientOptions{
142135
Dsn: "___PUBLIC_DSN___",
143136
}

docs/platforms/go/common/configuration/transports.mdx

Lines changed: 6 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -14,23 +14,13 @@ To configure transport, provide an instance of `sentry.Transport` interface to `
1414

1515

1616
```go
17-
package main
17+
sentrySyncTransport := sentry.NewHTTPSyncTransport()
18+
sentrySyncTransport.Timeout = time.Second * 3
1819

19-
import (
20-
"time"
21-
22-
"github.com/getsentry/sentry-go"
23-
)
24-
25-
func main() {
26-
sentrySyncTransport := sentry.NewHTTPSyncTransport()
27-
sentrySyncTransport.Timeout = time.Second * 3
28-
29-
sentry.Init(sentry.ClientOptions{
30-
Dsn: "___PUBLIC_DSN___",
31-
Transport: sentrySyncTransport,
32-
})
33-
}
20+
sentry.Init(sentry.ClientOptions{
21+
Dsn: "___PUBLIC_DSN___",
22+
Transport: sentrySyncTransport,
23+
})
3424
```
3525

3626
Each transport, provide it's own factory function. `NewHTTPTransport` and `NewHTTPSyncTransport` respectively.

docs/platforms/go/common/index.mdx

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -10,20 +10,6 @@ Check out the other SDKs we support in the left-hand dropdown.
1010

1111
* If you don't have an account and Sentry project established already, please head over to [Sentry](https://sentry.io/signup/), and then return to this page.
1212

13-
## Features
14-
15-
In addition to capturing errors, you can monitor interactions between multiple services or applications by [enabling tracing](/concepts/key-terms/tracing/).
16-
17-
Select which Sentry features you'd like to install in addition to Error Monitoring to get the corresponding installation and configuration instructions below.
18-
19-
<OnboardingOptionButtons
20-
options={[
21-
'error-monitoring',
22-
'performance',
23-
'logs',
24-
]}
25-
/>
26-
2713
## Install
2814

2915
<PlatformContent includePath="getting-started-install" />

docs/platforms/go/common/integrations/index.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ To disable default integrations, you can provide an empty list of integrations w
1212

1313
```go
1414
sentry.Init(sentry.ClientOptions{
15-
Dsn: "https://[email protected]/0",
15+
Dsn: "___PUBLIC_DSN___",
1616
Integrations: func(i []sentry.Integration) []sentry.Integration {
1717
return []sentry.Integration{}
1818
},

0 commit comments

Comments
 (0)