examples

package
v1.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 2, 2025 License: MIT Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DataDogHook

type DataDogHook struct {
}

DataDogHook emits events to DataDog APM. This is a template implementation - requires DataDog SDK integration.

To use this hook:

  1. Import DataDog SDK: "gopkg.in/DataDog/dd-trace-go.v1/ddtrace/tracer"
  2. Initialize DataDog tracer in main()
  3. Register this hook with the observability registry

Example integration:

import "gopkg.in/DataDog/dd-trace-go.v1/ddtrace/tracer"

func main() {
    tracer.Start(tracer.WithService("cedros-pay"))
    defer tracer.Stop()

    hook := examples.NewDataDogHook()
    registry.RegisterPaymentHook(hook)
}

func NewDataDogHook

func NewDataDogHook() *DataDogHook

NewDataDogHook creates a hook that emits events to DataDog.

func (*DataDogHook) Name

func (h *DataDogHook) Name() string

func (*DataDogHook) OnCartCheckout

func (h *DataDogHook) OnCartCheckout(ctx context.Context, event observability.CartCheckoutEvent)

func (*DataDogHook) OnCartCreated

func (h *DataDogHook) OnCartCreated(ctx context.Context, event observability.CartCreatedEvent)

func (*DataDogHook) OnDatabaseQuery

func (h *DataDogHook) OnDatabaseQuery(ctx context.Context, event observability.DatabaseQueryEvent)

func (*DataDogHook) OnPaymentCompleted

func (h *DataDogHook) OnPaymentCompleted(ctx context.Context, event observability.PaymentCompletedEvent)

func (*DataDogHook) OnPaymentSettled

func (h *DataDogHook) OnPaymentSettled(ctx context.Context, event observability.PaymentSettledEvent)

func (*DataDogHook) OnPaymentStarted

func (h *DataDogHook) OnPaymentStarted(ctx context.Context, event observability.PaymentStartedEvent)

func (*DataDogHook) OnRPCCall

func (h *DataDogHook) OnRPCCall(ctx context.Context, event observability.RPCCallEvent)

func (*DataDogHook) OnRefundProcessed

func (h *DataDogHook) OnRefundProcessed(ctx context.Context, event observability.RefundProcessedEvent)

func (*DataDogHook) OnRefundRequested

func (h *DataDogHook) OnRefundRequested(ctx context.Context, event observability.RefundRequestedEvent)

func (*DataDogHook) OnWebhookDelivered

func (h *DataDogHook) OnWebhookDelivered(ctx context.Context, event observability.WebhookDeliveredEvent)

func (*DataDogHook) OnWebhookFailed

func (h *DataDogHook) OnWebhookFailed(ctx context.Context, event observability.WebhookFailedEvent)

func (*DataDogHook) OnWebhookQueued

func (h *DataDogHook) OnWebhookQueued(ctx context.Context, event observability.WebhookQueuedEvent)

func (*DataDogHook) OnWebhookRetried

func (h *DataDogHook) OnWebhookRetried(ctx context.Context, event observability.WebhookRetriedEvent)

type LoggingHook

type LoggingHook struct {
	// contains filtered or unexported fields
}

LoggingHook logs all observability events using zerolog. Useful for debugging and development environments.

func NewLoggingHook

func NewLoggingHook(logger zerolog.Logger) *LoggingHook

NewLoggingHook creates a hook that logs all events.

func (*LoggingHook) Name

func (h *LoggingHook) Name() string

func (*LoggingHook) OnCartCheckout

func (h *LoggingHook) OnCartCheckout(ctx context.Context, event observability.CartCheckoutEvent)

func (*LoggingHook) OnCartCreated

func (h *LoggingHook) OnCartCreated(ctx context.Context, event observability.CartCreatedEvent)

func (*LoggingHook) OnDatabaseQuery

func (h *LoggingHook) OnDatabaseQuery(ctx context.Context, event observability.DatabaseQueryEvent)

func (*LoggingHook) OnPaymentCompleted

func (h *LoggingHook) OnPaymentCompleted(ctx context.Context, event observability.PaymentCompletedEvent)

func (*LoggingHook) OnPaymentSettled

func (h *LoggingHook) OnPaymentSettled(ctx context.Context, event observability.PaymentSettledEvent)

func (*LoggingHook) OnPaymentStarted

func (h *LoggingHook) OnPaymentStarted(ctx context.Context, event observability.PaymentStartedEvent)

func (*LoggingHook) OnRPCCall

func (h *LoggingHook) OnRPCCall(ctx context.Context, event observability.RPCCallEvent)

func (*LoggingHook) OnRefundProcessed

func (h *LoggingHook) OnRefundProcessed(ctx context.Context, event observability.RefundProcessedEvent)

func (*LoggingHook) OnRefundRequested

func (h *LoggingHook) OnRefundRequested(ctx context.Context, event observability.RefundRequestedEvent)

func (*LoggingHook) OnWebhookDelivered

func (h *LoggingHook) OnWebhookDelivered(ctx context.Context, event observability.WebhookDeliveredEvent)

func (*LoggingHook) OnWebhookFailed

func (h *LoggingHook) OnWebhookFailed(ctx context.Context, event observability.WebhookFailedEvent)

func (*LoggingHook) OnWebhookQueued

func (h *LoggingHook) OnWebhookQueued(ctx context.Context, event observability.WebhookQueuedEvent)

func (*LoggingHook) OnWebhookRetried

func (h *LoggingHook) OnWebhookRetried(ctx context.Context, event observability.WebhookRetriedEvent)

type OpenTelemetryHook

type OpenTelemetryHook struct {
}

OpenTelemetryHook emits events to OpenTelemetry traces. This is a template implementation - requires OpenTelemetry SDK integration.

To use this hook:

  1. Import OpenTelemetry SDK: "go.opentelemetry.io/otel"
  2. Initialize OTEL tracer provider in main()
  3. Register this hook with the observability registry

Example integration:

import (
    "go.opentelemetry.io/otel"
    "go.opentelemetry.io/otel/exporters/jaeger"
    "go.opentelemetry.io/otel/sdk/trace"
)

func main() {
    exporter, _ := jaeger.New(jaeger.WithCollectorEndpoint())
    tp := trace.NewTracerProvider(trace.WithBatcher(exporter))
    otel.SetTracerProvider(tp)

    hook := examples.NewOpenTelemetryHook()
    registry.RegisterPaymentHook(hook)
}

func NewOpenTelemetryHook

func NewOpenTelemetryHook() *OpenTelemetryHook

NewOpenTelemetryHook creates a hook that emits events to OpenTelemetry.

func (*OpenTelemetryHook) Name

func (h *OpenTelemetryHook) Name() string

func (*OpenTelemetryHook) OnCartCheckout

func (h *OpenTelemetryHook) OnCartCheckout(ctx context.Context, event observability.CartCheckoutEvent)

func (*OpenTelemetryHook) OnCartCreated

func (h *OpenTelemetryHook) OnCartCreated(ctx context.Context, event observability.CartCreatedEvent)

func (*OpenTelemetryHook) OnDatabaseQuery

func (h *OpenTelemetryHook) OnDatabaseQuery(ctx context.Context, event observability.DatabaseQueryEvent)

func (*OpenTelemetryHook) OnPaymentCompleted

func (h *OpenTelemetryHook) OnPaymentCompleted(ctx context.Context, event observability.PaymentCompletedEvent)

func (*OpenTelemetryHook) OnPaymentSettled

func (h *OpenTelemetryHook) OnPaymentSettled(ctx context.Context, event observability.PaymentSettledEvent)

func (*OpenTelemetryHook) OnPaymentStarted

func (h *OpenTelemetryHook) OnPaymentStarted(ctx context.Context, event observability.PaymentStartedEvent)

func (*OpenTelemetryHook) OnRPCCall

func (h *OpenTelemetryHook) OnRPCCall(ctx context.Context, event observability.RPCCallEvent)

func (*OpenTelemetryHook) OnRefundProcessed

func (h *OpenTelemetryHook) OnRefundProcessed(ctx context.Context, event observability.RefundProcessedEvent)

func (*OpenTelemetryHook) OnRefundRequested

func (h *OpenTelemetryHook) OnRefundRequested(ctx context.Context, event observability.RefundRequestedEvent)

func (*OpenTelemetryHook) OnWebhookDelivered

func (h *OpenTelemetryHook) OnWebhookDelivered(ctx context.Context, event observability.WebhookDeliveredEvent)

func (*OpenTelemetryHook) OnWebhookFailed

func (h *OpenTelemetryHook) OnWebhookFailed(ctx context.Context, event observability.WebhookFailedEvent)

func (*OpenTelemetryHook) OnWebhookQueued

func (h *OpenTelemetryHook) OnWebhookQueued(ctx context.Context, event observability.WebhookQueuedEvent)

func (*OpenTelemetryHook) OnWebhookRetried

func (h *OpenTelemetryHook) OnWebhookRetried(ctx context.Context, event observability.WebhookRetriedEvent)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL