mirror of
https://github.com/xaionaro-go/streamctl.git
synced 2025-10-15 20:10:50 +08:00
Initial commit, pt. 66
This commit is contained in:
5
go.mod
5
go.mod
@@ -10,13 +10,13 @@ replace github.com/goccy/go-yaml v1.11.3 => github.com/yoelsusanto/go-yaml v0.0.
|
||||
replace github.com/yutopp/go-rtmp v0.0.7 => ../go-rtmp/
|
||||
|
||||
require (
|
||||
github.com/facebookincubator/go-belt v0.0.0-20240706172357-c5875adb39ef
|
||||
github.com/facebookincubator/go-belt v0.0.0-20240707112111-9cf347bf49e2
|
||||
github.com/go-git/go-billy/v5 v5.5.0
|
||||
github.com/goccy/go-yaml v1.11.3
|
||||
github.com/hashicorp/go-multierror v1.1.1
|
||||
github.com/nicklaw5/helix/v2 v2.26.0
|
||||
github.com/spf13/cobra v1.8.0
|
||||
github.com/xaionaro-go/logrustash v0.0.0-20240803221212-52f205f3f1f2
|
||||
github.com/xaionaro-go/logrustash v0.0.0-20240804141650-d48034780a5f
|
||||
golang.org/x/oauth2 v0.17.0
|
||||
google.golang.org/api v0.169.0
|
||||
)
|
||||
@@ -181,7 +181,6 @@ require (
|
||||
github.com/vishvananda/netlink v1.1.1-0.20211118161826-650dca95af54 // indirect
|
||||
github.com/vishvananda/netns v0.0.4 // indirect
|
||||
github.com/whyrusleeping/go-keyspace v0.0.0-20160322163242-5b898ac5add1 // indirect
|
||||
github.com/xaionaro-go/goautosocket v0.0.0-20240803221104-cef7f165571a // indirect
|
||||
github.com/xanzy/ssh-agent v0.3.3 // indirect
|
||||
github.com/yuin/goldmark v1.7.1 // indirect
|
||||
github.com/yutopp/go-amf0 v0.1.0 // indirect
|
||||
|
10
go.sum
10
go.sum
@@ -180,8 +180,8 @@ github.com/envoyproxy/go-control-plane v0.9.7/go.mod h1:cwu0lG7PUMfa9snN8LXBig5y
|
||||
github.com/envoyproxy/go-control-plane v0.9.9-0.20201210154907-fd9021fe5dad/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk=
|
||||
github.com/envoyproxy/go-control-plane v0.9.9-0.20210217033140-668b12f5399d/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk=
|
||||
github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c=
|
||||
github.com/facebookincubator/go-belt v0.0.0-20240706172357-c5875adb39ef h1:ZsOEnpQjCQAF4cPK0gwt/fN65sbOg1e7zbfXIX4iMQ4=
|
||||
github.com/facebookincubator/go-belt v0.0.0-20240706172357-c5875adb39ef/go.mod h1:BLkOQHXT14GLgKvM22LB/fDcq1stjijrTOJQEk3xrUA=
|
||||
github.com/facebookincubator/go-belt v0.0.0-20240707112111-9cf347bf49e2 h1:TjgMDyXmX5ZGuDDS98ol5CLcVtrIGHNwQtA24Z2xBrY=
|
||||
github.com/facebookincubator/go-belt v0.0.0-20240707112111-9cf347bf49e2/go.mod h1:BLkOQHXT14GLgKvM22LB/fDcq1stjijrTOJQEk3xrUA=
|
||||
github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4=
|
||||
github.com/fatih/color v1.10.0 h1:s36xzo75JdqLaaWoiEHk767eHiwo0598uUxyfiPkDsg=
|
||||
github.com/fatih/color v1.10.0/go.mod h1:ELkj/draVOlAH/xkhN6mQ50Qd0MPOk5AAr3maGEBuJM=
|
||||
@@ -846,10 +846,8 @@ github.com/whyrusleeping/go-keyspace v0.0.0-20160322163242-5b898ac5add1 h1:EKhdz
|
||||
github.com/whyrusleeping/go-keyspace v0.0.0-20160322163242-5b898ac5add1/go.mod h1:8UvriyWtv5Q5EOgjHaSseUEdkQfvwFv1I/In/O2M9gc=
|
||||
github.com/xaionaro-go/datacounter v1.0.4 h1:+QMZLmu73R5WGkQfUPwlXF/JFN+Weo4iuDZkiL2wVm8=
|
||||
github.com/xaionaro-go/datacounter v1.0.4/go.mod h1:Sf9vBevuV6w5iE6K3qJ9pWVKcyS60clWBUSQLjt5++c=
|
||||
github.com/xaionaro-go/goautosocket v0.0.0-20240803221104-cef7f165571a h1:nnSVcn4e9TkQ5GuN/MoeET18gSYudJJMtlKXFRHvVjQ=
|
||||
github.com/xaionaro-go/goautosocket v0.0.0-20240803221104-cef7f165571a/go.mod h1:7X2d4ohzI2SqqM/dNgIlBx3hUl6dB6clspwt+9c9IqA=
|
||||
github.com/xaionaro-go/logrustash v0.0.0-20240803221212-52f205f3f1f2 h1:J6HNJRYV42vTeH3UM4Z9kQU1zwxsyTjoaSF5YgUklZ0=
|
||||
github.com/xaionaro-go/logrustash v0.0.0-20240803221212-52f205f3f1f2/go.mod h1:5CziRurpvKGPZSyV7roFe47V0cj8ireI+n9TiN/ygZ0=
|
||||
github.com/xaionaro-go/logrustash v0.0.0-20240804141650-d48034780a5f h1:mMrVrYtH9MyCUzBwPvuEntvqdCJ0zifCfqV6bHU6z1M=
|
||||
github.com/xaionaro-go/logrustash v0.0.0-20240804141650-d48034780a5f/go.mod h1:aszOZHoPPSgKwdbJUgonps3MSODqctkNhwQDDwlw0Eg=
|
||||
github.com/xaionaro-go/unsafetools v0.0.0-20210722164218-75ba48cf7b3c h1:WeiZrQbFImtlpYCHdxWpjm033Zm0n1ihx3bD/9b6rYI=
|
||||
github.com/xaionaro-go/unsafetools v0.0.0-20210722164218-75ba48cf7b3c/go.mod h1:fnHPnf0CsRZNVxlSs0ZdUiYW49mLF5QFycfmoT+LuO4=
|
||||
github.com/xanzy/ssh-agent v0.3.3 h1:+/15pJfg/RsTxqYcX6fHqOXZwwMP+2VyYWJeWM2qQFM=
|
||||
|
12
pkg/observability/go.go
Normal file
12
pkg/observability/go.go
Normal file
@@ -0,0 +1,12 @@
|
||||
package observability
|
||||
|
||||
import (
|
||||
"context"
|
||||
)
|
||||
|
||||
func Go(ctx context.Context, fn func()) {
|
||||
go func() {
|
||||
defer func() { PanicIfNotNil(ctx, recover()) }()
|
||||
fn()
|
||||
}()
|
||||
}
|
@@ -20,7 +20,7 @@ func CtxWithLogstash(
|
||||
return ctx
|
||||
}
|
||||
|
||||
hook, err := logrustash.NewAsyncHook(addr.Scheme, addr.Host, appName)
|
||||
hook, err := logrustash.NewHook(addr.Scheme, addr.Host, appName)
|
||||
if err != nil {
|
||||
logger.Errorf(ctx, "unable to initialize the hook: %w", err)
|
||||
return ctx
|
||||
|
17
pkg/observability/observe_panic.go
Normal file
17
pkg/observability/observe_panic.go
Normal file
@@ -0,0 +1,17 @@
|
||||
package observability
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/facebookincubator/go-belt"
|
||||
"github.com/facebookincubator/go-belt/tool/experimental/errmon"
|
||||
)
|
||||
|
||||
func PanicIfNotNil(ctx context.Context, r any) {
|
||||
if r == nil {
|
||||
return
|
||||
}
|
||||
errmon.ObserveRecoverCtx(ctx, r)
|
||||
belt.Flush(ctx)
|
||||
panic(r)
|
||||
}
|
Reference in New Issue
Block a user