github.com/angryronald/go-kit@v0.0.0-20240505173814-ff2bd9c79dbf/generic/http/client/client.log.register.go (about)

     1  package client
     2  
     3  import (
     4  	"context"
     5  	"os"
     6  	"os/signal"
     7  
     8  	"gocloud.dev/pubsub"
     9  	"gorm.io/gorm"
    10  
    11  	"github.com/sirupsen/logrus"
    12  
    13  	"github.com/angryronald/go-kit/generic/repository/sql"
    14  )
    15  
    16  func RegisterClientRequestLogSubscriber(db *gorm.DB, subscription map[string]*pubsub.Subscription) {
    17  	clientRequestLogSubscriber := NewClientRequestLogSubscriber(
    18  		subscription,
    19  		NewClientRequestLogService(
    20  			sql.NewImmutableRepository(db),
    21  		),
    22  	)
    23  
    24  	go clientRequestLogSubscriber.Run(context.Background())
    25  
    26  	logrus.Debug("Client Request Log Subscribers are up")
    27  
    28  	quit := make(chan os.Signal, 1)
    29  	signal.Notify(quit, os.Interrupt)
    30  
    31  	<-quit
    32  
    33  	logrus.Debug("Client Request Log Subscribers down")
    34  }