Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion example_batch_insert_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import (
"context"
"fmt"
"log/slog"
"os"

"github.com/jackc/pgx/v5/pgxpool"

Expand Down Expand Up @@ -45,7 +46,7 @@ func Example_batchInsert() {
river.AddWorker(workers, &BatchInsertWorker{})

riverClient, err := river.NewClient(riverpgxv5.New(dbPool), &river.Config{
Logger: slog.New(&slogutil.SlogMessageOnlyHandler{Level: slog.LevelWarn}),
Logger: slog.New(slog.NewTextHandler(os.Stdout, &slog.HandlerOptions{Level: slog.LevelWarn, ReplaceAttr: slogutil.NoLevelTime})),

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I might prefer to still wrap this in a helper to a) avoid potential drift as examples are added/updated and b) allow some space for a comment about why this uses ReplaceAttr which most users won't want/need. Up to you though, I do see the advantage of not obscuring the example code behind more indirection.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, let's leave for now. I kinda like how this just shows raw options instead of hiding things in a helper, and it's really only three options it's configuring total, with 2/3 very standard. The comment on why ReplaceAttr is on slogutil.NoLevelTime in case anyone cares to jump-to and read it.

Queues: map[string]river.QueueConfig{
river.QueueDefault: {MaxWorkers: 100},
},
Expand Down
3 changes: 2 additions & 1 deletion example_client_from_context_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import (
"errors"
"fmt"
"log/slog"
"os"

"github.com/jackc/pgx/v5"
"github.com/jackc/pgx/v5/pgxpool"
Expand Down Expand Up @@ -53,7 +54,7 @@ func ExampleClientFromContext_pgx() {

riverClient, err := river.NewClient(riverpgxv5.New(dbPool), &river.Config{
ID: "ClientFromContextClient",
Logger: slog.New(&slogutil.SlogMessageOnlyHandler{Level: slog.LevelWarn}),
Logger: slog.New(slog.NewTextHandler(os.Stdout, &slog.HandlerOptions{Level: slog.LevelWarn, ReplaceAttr: slogutil.NoLevelTime})),
Queues: map[string]river.QueueConfig{
river.QueueDefault: {MaxWorkers: 10},
},
Expand Down
3 changes: 2 additions & 1 deletion example_complete_job_within_tx_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import (
"context"
"fmt"
"log/slog"
"os"

"github.com/jackc/pgx/v5/pgxpool"

Expand Down Expand Up @@ -71,7 +72,7 @@ func Example_completeJobWithinTx() {
river.AddWorker(workers, &TransactionalWorker{dbPool: dbPool})

riverClient, err := river.NewClient(riverpgxv5.New(dbPool), &river.Config{
Logger: slog.New(&slogutil.SlogMessageOnlyHandler{Level: slog.LevelWarn}),
Logger: slog.New(slog.NewTextHandler(os.Stdout, &slog.HandlerOptions{Level: slog.LevelWarn, ReplaceAttr: slogutil.NoLevelTime})),
Queues: map[string]river.QueueConfig{
river.QueueDefault: {MaxWorkers: 100},
},
Expand Down
3 changes: 2 additions & 1 deletion example_cron_job_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import (
"context"
"fmt"
"log/slog"
"os"

"github.com/jackc/pgx/v5/pgxpool"
"github.com/robfig/cron/v3"
Expand Down Expand Up @@ -52,7 +53,7 @@ func Example_cronJob() {
}

riverClient, err := river.NewClient(riverpgxv5.New(dbPool), &river.Config{
Logger: slog.New(&slogutil.SlogMessageOnlyHandler{Level: slog.LevelWarn}),
Logger: slog.New(slog.NewTextHandler(os.Stdout, &slog.HandlerOptions{Level: slog.LevelWarn, ReplaceAttr: slogutil.NoLevelTime})),
PeriodicJobs: []*river.PeriodicJob{
river.NewPeriodicJob(
schedule,
Expand Down
3 changes: 2 additions & 1 deletion example_custom_insert_opts_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import (
"context"
"fmt"
"log/slog"
"os"

"github.com/jackc/pgx/v5/pgxpool"

Expand Down Expand Up @@ -69,7 +70,7 @@ func Example_customInsertOpts() {
river.AddWorker(workers, &SometimesHighPriorityWorker{})

riverClient, err := river.NewClient(riverpgxv5.New(dbPool), &river.Config{
Logger: slog.New(&slogutil.SlogMessageOnlyHandler{Level: slog.LevelWarn}),
Logger: slog.New(slog.NewTextHandler(os.Stdout, &slog.HandlerOptions{Level: slog.LevelWarn, ReplaceAttr: slogutil.NoLevelTime})),
Queues: map[string]river.QueueConfig{
river.QueueDefault: {MaxWorkers: 100},
"high_priority": {MaxWorkers: 100},
Expand Down
3 changes: 2 additions & 1 deletion example_error_handler_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import (
"errors"
"fmt"
"log/slog"
"os"

"github.com/jackc/pgx/v5/pgxpool"

Expand Down Expand Up @@ -74,7 +75,7 @@ func Example_errorHandler() {

riverClient, err := river.NewClient(riverpgxv5.New(dbPool), &river.Config{
ErrorHandler: &CustomErrorHandler{},
Logger: slog.New(&slogutil.SlogMessageOnlyHandler{Level: 9}), // Suppress logging so example output is cleaner (9 > slog.LevelError).
Logger: slog.New(slog.NewTextHandler(os.Stdout, &slog.HandlerOptions{Level: slog.Level(9), ReplaceAttr: slogutil.NoLevelTime})), // Suppress logging so example output is cleaner (9 > slog.LevelError).
Queues: map[string]river.QueueConfig{
river.QueueDefault: {MaxWorkers: 10},
},
Expand Down
3 changes: 2 additions & 1 deletion example_global_hooks_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import (
"context"
"fmt"
"log/slog"
"os"

"github.com/jackc/pgx/v5/pgxpool"

Expand Down Expand Up @@ -73,7 +74,7 @@ func Example_globalHooks() {
&InsertBeginHook{},
&WorkBeginHook{},
},
Logger: slog.New(&slogutil.SlogMessageOnlyHandler{Level: slog.LevelWarn}),
Logger: slog.New(slog.NewTextHandler(os.Stdout, &slog.HandlerOptions{Level: slog.LevelWarn, ReplaceAttr: slogutil.NoLevelTime})),
Queues: map[string]river.QueueConfig{
river.QueueDefault: {MaxWorkers: 100},
},
Expand Down
3 changes: 2 additions & 1 deletion example_global_middleware_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import (
"context"
"fmt"
"log/slog"
"os"

"github.com/jackc/pgx/v5/pgxpool"

Expand Down Expand Up @@ -68,7 +69,7 @@ func Example_globalMiddleware() {

riverClient, err := river.NewClient(riverpgxv5.New(dbPool), &river.Config{
// Order is significant. See output below.
Logger: slog.New(&slogutil.SlogMessageOnlyHandler{Level: slog.LevelWarn}),
Logger: slog.New(slog.NewTextHandler(os.Stdout, &slog.HandlerOptions{Level: slog.LevelWarn, ReplaceAttr: slogutil.NoLevelTime})),
Middleware: []rivertype.Middleware{
&JobBothInsertAndWorkMiddleware{},
&JobInsertMiddleware{},
Expand Down
4 changes: 2 additions & 2 deletions example_graceful_shutdown_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ func Example_gracefulShutdown() {
river.AddWorker(workers, &WaitsForCancelOnlyWorker{jobStarted: jobStarted})

riverClient, err := river.NewClient(riverpgxv5.New(dbPool), &river.Config{
Logger: slog.New(&slogutil.SlogMessageOnlyHandler{Level: slog.LevelWarn}),
Logger: slog.New(slog.NewTextHandler(os.Stdout, &slog.HandlerOptions{Level: slog.LevelWarn, ReplaceAttr: slogutil.NoLevelTimeJobID})),
Queues: map[string]river.QueueConfig{
river.QueueDefault: {MaxWorkers: 100},
},
Expand Down Expand Up @@ -168,5 +168,5 @@ func Example_gracefulShutdown() {
// Received SIGINT/SIGTERM; initiating soft stop (try to wait for jobs to finish)
// Received SIGINT/SIGTERM again; initiating hard stop (cancel everything)
// Job cancelled
// jobexecutor.JobExecutor: Job errored; retrying
// msg="jobexecutor.JobExecutor: Job errored; retrying" error="context canceled" job_kind=waits_for_cancel_only
}
3 changes: 2 additions & 1 deletion example_insert_and_work_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import (
"context"
"fmt"
"log/slog"
"os"
"sort"

"github.com/jackc/pgx/v5/pgxpool"
Expand Down Expand Up @@ -48,7 +49,7 @@ func Example_insertAndWork() {
river.AddWorker(workers, &SortWorker{})

riverClient, err := river.NewClient(riverpgxv5.New(dbPool), &river.Config{
Logger: slog.New(&slogutil.SlogMessageOnlyHandler{Level: slog.LevelWarn}),
Logger: slog.New(slog.NewTextHandler(os.Stdout, &slog.HandlerOptions{Level: slog.LevelWarn, ReplaceAttr: slogutil.NoLevelTime})),
Queues: map[string]river.QueueConfig{
river.QueueDefault: {MaxWorkers: 100},
},
Expand Down
3 changes: 2 additions & 1 deletion example_job_args_hooks_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import (
"context"
"fmt"
"log/slog"
"os"

"github.com/jackc/pgx/v5/pgxpool"

Expand Down Expand Up @@ -91,7 +92,7 @@ func Example_jobArgsHooks() {
river.AddWorker(workers, &JobWithHooksWorker{})

riverClient, err := river.NewClient(riverpgxv5.New(dbPool), &river.Config{
Logger: slog.New(&slogutil.SlogMessageOnlyHandler{Level: slog.LevelWarn}),
Logger: slog.New(slog.NewTextHandler(os.Stdout, &slog.HandlerOptions{Level: slog.LevelWarn, ReplaceAttr: slogutil.NoLevelTime})),
Queues: map[string]river.QueueConfig{
river.QueueDefault: {MaxWorkers: 100},
},
Expand Down
5 changes: 3 additions & 2 deletions example_job_cancel_from_client_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import (
"context"
"errors"
"log/slog"
"os"
"time"

"github.com/jackc/pgx/v5/pgxpool"
Expand Down Expand Up @@ -53,7 +54,7 @@ func Example_jobCancelFromClient() {
river.AddWorker(workers, &SleepingWorker{jobChan: jobChan})

riverClient, err := river.NewClient(riverpgxv5.New(dbPool), &river.Config{
Logger: slog.New(&slogutil.SlogMessageOnlyHandler{Level: slog.LevelWarn}),
Logger: slog.New(slog.NewTextHandler(os.Stdout, &slog.HandlerOptions{Level: slog.LevelWarn, ReplaceAttr: slogutil.NoLevelTimeJobID})),
Queues: map[string]river.QueueConfig{
river.QueueDefault: {MaxWorkers: 10},
},
Expand Down Expand Up @@ -99,5 +100,5 @@ func Example_jobCancelFromClient() {
}

// Output:
// jobexecutor.JobExecutor: job cancelled remotely
// msg="jobexecutor.JobExecutor: job cancelled remotely"
}
3 changes: 2 additions & 1 deletion example_job_cancel_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import (
"errors"
"fmt"
"log/slog"
"os"

"github.com/jackc/pgx/v5/pgxpool"

Expand Down Expand Up @@ -49,7 +50,7 @@ func Example_jobCancel() { //nolint:dupl
river.AddWorker(workers, &CancellingWorker{})

riverClient, err := river.NewClient(riverpgxv5.New(dbPool), &river.Config{
Logger: slog.New(&slogutil.SlogMessageOnlyHandler{Level: slog.LevelWarn}),
Logger: slog.New(slog.NewTextHandler(os.Stdout, &slog.HandlerOptions{Level: slog.LevelWarn, ReplaceAttr: slogutil.NoLevelTime})),
Queues: map[string]river.QueueConfig{
river.QueueDefault: {MaxWorkers: 10},
},
Expand Down
3 changes: 2 additions & 1 deletion example_job_snooze_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import (
"context"
"fmt"
"log/slog"
"os"
"time"

"github.com/jackc/pgx/v5/pgxpool"
Expand Down Expand Up @@ -51,7 +52,7 @@ func Example_jobSnooze() { //nolint:dupl
river.AddWorker(workers, &SnoozingWorker{})

riverClient, err := river.NewClient(riverpgxv5.New(dbPool), &river.Config{
Logger: slog.New(&slogutil.SlogMessageOnlyHandler{Level: slog.LevelWarn}),
Logger: slog.New(slog.NewTextHandler(os.Stdout, &slog.HandlerOptions{Level: slog.LevelWarn, ReplaceAttr: slogutil.NoLevelTime})),
Queues: map[string]river.QueueConfig{
river.QueueDefault: {MaxWorkers: 10},
},
Expand Down
3 changes: 2 additions & 1 deletion example_periodic_job_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import (
"context"
"fmt"
"log/slog"
"os"
"time"

"github.com/jackc/pgx/v5/pgxpool"
Expand Down Expand Up @@ -45,7 +46,7 @@ func Example_periodicJob() {
river.AddWorker(workers, &PeriodicJobWorker{})

riverClient, err := river.NewClient(riverpgxv5.New(dbPool), &river.Config{
Logger: slog.New(&slogutil.SlogMessageOnlyHandler{Level: slog.LevelWarn}),
Logger: slog.New(slog.NewTextHandler(os.Stdout, &slog.HandlerOptions{Level: slog.LevelWarn, ReplaceAttr: slogutil.NoLevelTime})),
PeriodicJobs: []*river.PeriodicJob{
river.NewPeriodicJob(
river.PeriodicInterval(15*time.Minute),
Expand Down
3 changes: 2 additions & 1 deletion example_queue_pause_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import (
"context"
"fmt"
"log/slog"
"os"
"time"

"github.com/jackc/pgx/v5/pgxpool"
Expand Down Expand Up @@ -56,7 +57,7 @@ func Example_queuePause() {
river.AddWorker(workers, &ReportingWorker{jobWorkedCh: jobWorkedCh})

riverClient, err := river.NewClient(riverpgxv5.New(dbPool), &river.Config{
Logger: slog.New(&slogutil.SlogMessageOnlyHandler{Level: slog.LevelWarn}),
Logger: slog.New(slog.NewTextHandler(os.Stdout, &slog.HandlerOptions{Level: slog.LevelWarn, ReplaceAttr: slogutil.NoLevelTime})),
Queues: map[string]river.QueueConfig{
unreliableQueue: {MaxWorkers: 10},
reliableQueue: {MaxWorkers: 10},
Expand Down
3 changes: 2 additions & 1 deletion example_scheduled_job_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import (
"context"
"fmt"
"log/slog"
"os"
"time"

"github.com/jackc/pgx/v5/pgxpool"
Expand Down Expand Up @@ -46,7 +47,7 @@ func Example_scheduledJob() {
river.AddWorker(workers, &ScheduledWorker{})

riverClient, err := river.NewClient(riverpgxv5.New(dbPool), &river.Config{
Logger: slog.New(&slogutil.SlogMessageOnlyHandler{Level: slog.LevelWarn}),
Logger: slog.New(slog.NewTextHandler(os.Stdout, &slog.HandlerOptions{Level: slog.LevelWarn, ReplaceAttr: slogutil.NoLevelTime})),
Queues: map[string]river.QueueConfig{
river.QueueDefault: {MaxWorkers: 100},
},
Expand Down
3 changes: 2 additions & 1 deletion example_subscription_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import (
"errors"
"fmt"
"log/slog"
"os"
"time"

"github.com/jackc/pgx/v5/pgxpool"
Expand Down Expand Up @@ -53,7 +54,7 @@ func Example_subscription() {
river.AddWorker(workers, &SubscriptionWorker{})

riverClient, err := river.NewClient(riverpgxv5.New(dbPool), &river.Config{
Logger: slog.New(&slogutil.SlogMessageOnlyHandler{Level: 9}), // Suppress logging so example output is cleaner (9 > slog.LevelError).
Logger: slog.New(slog.NewTextHandler(os.Stdout, &slog.HandlerOptions{Level: slog.Level(9), ReplaceAttr: slogutil.NoLevelTime})), // Suppress logging so example output is cleaner (9 > slog.LevelError).
Queues: map[string]river.QueueConfig{
river.QueueDefault: {MaxWorkers: 100},
},
Expand Down
3 changes: 2 additions & 1 deletion example_unique_job_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import (
"context"
"fmt"
"log/slog"
"os"
"time"

"github.com/jackc/pgx/v5/pgxpool"
Expand Down Expand Up @@ -76,7 +77,7 @@ func Example_uniqueJob() {
river.AddWorker(workers, &ReconcileAccountWorker{})

riverClient, err := river.NewClient(riverpgxv5.New(dbPool), &river.Config{
Logger: slog.New(&slogutil.SlogMessageOnlyHandler{Level: slog.LevelWarn}),
Logger: slog.New(slog.NewTextHandler(os.Stdout, &slog.HandlerOptions{Level: slog.LevelWarn, ReplaceAttr: slogutil.NoLevelTime})),
Queues: map[string]river.QueueConfig{
river.QueueDefault: {MaxWorkers: 100},
},
Expand Down
3 changes: 2 additions & 1 deletion example_work_func_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import (
"context"
"fmt"
"log/slog"
"os"

"github.com/jackc/pgx/v5/pgxpool"

Expand Down Expand Up @@ -40,7 +41,7 @@ func Example_workFunc() {
}))

riverClient, err := river.NewClient(riverpgxv5.New(dbPool), &river.Config{
Logger: slog.New(&slogutil.SlogMessageOnlyHandler{Level: slog.LevelWarn}),
Logger: slog.New(slog.NewTextHandler(os.Stdout, &slog.HandlerOptions{Level: slog.LevelWarn, ReplaceAttr: slogutil.NoLevelTime})),
Queues: map[string]river.QueueConfig{
river.QueueDefault: {MaxWorkers: 100},
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ import (
"errors"
"fmt"
"log/slog"
"os"
"time"

_ "github.com/jackc/pgx/v5/stdlib"
Expand Down Expand Up @@ -55,7 +56,7 @@ func ExampleClientFromContext_databaseSQL() {

riverClient, err := river.NewClient(riverdatabasesql.New(db), &river.Config{
ID: "ClientFromContextClientSQL",
Logger: slog.New(&slogutil.SlogMessageOnlyHandler{Level: slog.LevelWarn}),
Logger: slog.New(slog.NewTextHandler(os.Stdout, &slog.HandlerOptions{Level: slog.LevelWarn, ReplaceAttr: slogutil.NoLevelTime})),
Queues: map[string]river.QueueConfig{
river.QueueDefault: {MaxWorkers: 10},
},
Expand Down
3 changes: 2 additions & 1 deletion riverdriver/riverdrivertest/example_libsql_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import (
"context"
"database/sql"
"log/slog"
"os"

_ "github.com/tursodatabase/libsql-client-go/libsql"

Expand Down Expand Up @@ -36,7 +37,7 @@ func Example_libSQL() { //nolint:dupl
river.AddWorker(workers, &SortWorker{})

riverClient, err := river.NewClient(driver, &river.Config{
Logger: slog.New(&slogutil.SlogMessageOnlyHandler{Level: slog.LevelWarn}),
Logger: slog.New(slog.NewTextHandler(os.Stdout, &slog.HandlerOptions{Level: slog.LevelWarn, ReplaceAttr: slogutil.NoLevelTime})),
Queues: map[string]river.QueueConfig{
river.QueueDefault: {MaxWorkers: 100},
},
Expand Down
Loading
Loading