1
0
mirror of https://github.com/fumiama/terasu-cloudflared.git synced 2026-06-08 03:55:11 +08:00

feat: embed terasu inside

This commit is contained in:
源文雨
2025-12-21 16:51:38 +08:00
parent 0d2a7a0385
commit f99b9330df
23 changed files with 1195 additions and 18 deletions

View File

@@ -2,16 +2,19 @@ package sentry
import (
"bytes"
"context"
"crypto/tls"
"encoding/json"
"errors"
"fmt"
"io"
"net"
"net/http"
"net/url"
"sync"
"time"
"github.com/fumiama/terasu"
"github.com/getsentry/sentry-go/internal/ratelimit"
)
@@ -260,6 +263,17 @@ func (t *HTTPTransport) Configure(options ClientOptions) {
t.transport = options.HTTPTransport
} else {
t.transport = &http.Transport{
DialContext: func(ctx context.Context, network, addr string) (net.Conn, error) {
dialer := &net.Dialer{
Timeout: 30 * time.Second,
KeepAlive: 30 * time.Second,
}
conn, err := dialer.DialContext(ctx, network, addr)
if err != nil {
return nil, err
}
return terasu.NewConn(conn), nil
},
Proxy: getProxyConfig(options),
TLSClientConfig: getTLSConfig(options),
}
@@ -491,6 +505,17 @@ func (t *HTTPSyncTransport) Configure(options ClientOptions) {
t.transport = options.HTTPTransport
} else {
t.transport = &http.Transport{
DialContext: func(ctx context.Context, network, addr string) (net.Conn, error) {
dialer := &net.Dialer{
Timeout: 30 * time.Second,
KeepAlive: 30 * time.Second,
}
conn, err := dialer.DialContext(ctx, network, addr)
if err != nil {
return nil, err
}
return terasu.NewConn(conn), nil
},
Proxy: getProxyConfig(options),
TLSClientConfig: getTLSConfig(options),
}