Documentation ¶
Index ¶
- func Init(config Configuration)
- func IsEnabled() bool
- func SendAuditLog(ctx context.Context, model logcomapi.CreateAuditLogRequestDTO) error
- func SendAuditLogGroup(ctx context.Context, auditLogCollector *AuditLogCollector) error
- func SendAuditLogWithCreation(ctx context.Context, subject, subjectName string, newValue interface{}) error
- func SendAuditLogWithDeletion(ctx context.Context, subject, subjectName string, oldValue interface{}) error
- func SendAuditLogWithModification(ctx context.Context, subject, subjectName string, ...) error
- func SendAuditLogWithModificationModelChanges(ctx context.Context, subject, subjectName string, changes []ModelChange) error
- func SendConsoleLog(ctx context.Context, logLevel logcomapi.LogLevel, message string) error
- func SendConsoleLogWithModel(ctx context.Context, model logcomapi.CreateConsoleLogRequestDTO) error
- func SendNotification(ctx context.Context, eventCategory logcomapi.NotificationEventCategory, ...) error
- func SendNotificationWithModel(ctx context.Context, model logcomapi.CreateNotificationRequestDTO) error
- func SetClientCredentialProvider(provider ClientCredentialProvider)
- type AuditLogAction
- type AuditLogCollector
- func (c *AuditLogCollector) Add(model logcomapi.CreateAuditLogRequestDTO)
- func (c *AuditLogCollector) AddCreation(itemSubject, itemSubjectName string, newValue interface{})
- func (c *AuditLogCollector) AddDeletion(itemSubject, itemSubjectName string, oldValue interface{})
- func (c *AuditLogCollector) AddModification(itemSubject, itemSubjectName string, oldValue, newValue interface{})
- func (c *AuditLogCollector) AddModificationWithModelChanges(itemSubject, itemSubjectName string, changes []ModelChange)
- type AuditLogConfiguration
- type AuditLogModelDiff
- type AuditLogOperation
- type BatchedAuditLogOperation
- type ClientCredentialProvider
- type Configuration
- type ConsoleLogAction
- type ConsoleLogConfiguration
- type ConsoleLogOperation
- type GroupedModificationAuditLogOperation
- type HeaderProviderFunc
- type ModelChange
- type NotificationAction
- type NotificationConfiguration
- type NotificationMessage
- type NotificationOperation
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Init ¶
func Init(config Configuration)
func SendAuditLog ¶
func SendAuditLogGroup ¶
func SendAuditLogGroup(ctx context.Context, auditLogCollector *AuditLogCollector) error
func SendAuditLogWithModificationModelChanges ¶
func SendAuditLogWithModificationModelChanges(ctx context.Context, subject, subjectName string, changes []ModelChange) error
func SendConsoleLog ¶
func SendConsoleLogWithModel ¶
func SendNotification ¶
func SetClientCredentialProvider ¶ added in v1.2.3
func SetClientCredentialProvider(provider ClientCredentialProvider)
Types ¶
type AuditLogAction ¶
type AuditLogAction interface { IgnoreChangeOf(propertyNames ...string) AuditLogAction AndNotify() NotificationOperation[AuditLogAction] AndLog(logLevel logcomapi.LogLevel, message string) AuditLogAction OnComplete(onCompleteCallback func(error)) AuditLogAction Send() error }
type AuditLogCollector ¶
type AuditLogCollector struct {
// contains filtered or unexported fields
}
func NewAuditLogCollector ¶
func NewAuditLogCollector(parentSubject, parentSubjectName string) *AuditLogCollector
func NewAuditLogCollectorWithParent ¶
func NewAuditLogCollectorWithParent(parentAuditLog logcomapi.CreateAuditLogRequestDTO) *AuditLogCollector
func (*AuditLogCollector) Add ¶
func (c *AuditLogCollector) Add(model logcomapi.CreateAuditLogRequestDTO)
func (*AuditLogCollector) AddCreation ¶
func (c *AuditLogCollector) AddCreation(itemSubject, itemSubjectName string, newValue interface{})
func (*AuditLogCollector) AddDeletion ¶
func (c *AuditLogCollector) AddDeletion(itemSubject, itemSubjectName string, oldValue interface{})
func (*AuditLogCollector) AddModification ¶
func (c *AuditLogCollector) AddModification(itemSubject, itemSubjectName string, oldValue, newValue interface{})
func (*AuditLogCollector) AddModificationWithModelChanges ¶ added in v1.2.5
func (c *AuditLogCollector) AddModificationWithModelChanges(itemSubject, itemSubjectName string, changes []ModelChange)
type AuditLogConfiguration ¶ added in v1.2.1
type AuditLogConfiguration interface { UseService2ServiceAuthorization() AuditLogAction WithBearerAuthorization(bearerToken string) AuditLogAction WithContext(ctx context.Context) AuditLogAction WithTransactionID(transactionID uuid.UUID) AuditLogConfiguration }
func AuditCreation ¶
func AuditCreation(subject, subjectName string, newValue interface{}) AuditLogConfiguration
func AuditDeletion ¶
func AuditDeletion(subject, subjectName string, oldValue interface{}) AuditLogConfiguration
func AuditModification ¶
func AuditModification(subject, subjectName string, oldValue, newValue interface{}) AuditLogConfiguration
type AuditLogModelDiff ¶
type AuditLogModelDiff interface {
GetChanges(model interface{}, ignoredProperties map[string]interface{}) []ModelChange
}
type AuditLogOperation ¶
type AuditLogOperation interface { BatchCreate(subject string) BatchedAuditLogOperation BatchDelete(subject string) BatchedAuditLogOperation BatchModify(subject string) BatchedAuditLogOperation Create(subject, subjectName string, newValue interface{}) AuditLogConfiguration Modify(subject, subjectName string, oldValue, newValue interface{}) AuditLogConfiguration Delete(subject, subjectName string, oldValue interface{}) AuditLogConfiguration GroupedModify(subject, subjectName string) GroupedModificationAuditLogOperation }
func Audit ¶
func Audit() AuditLogOperation
type BatchedAuditLogOperation ¶ added in v1.2.1
type BatchedAuditLogOperation interface { AuditLogConfiguration CreateItem(subjectName string, newValue interface{}) BatchedAuditLogOperation ModifyItem(subjectName string, oldValue, newValue interface{}) BatchedAuditLogOperation ModifyItemWithModelChanges(subjectName string, changes []ModelChange) BatchedAuditLogOperation DeleteItem(subjectName string, oldValue interface{}) BatchedAuditLogOperation }
type ClientCredentialProvider ¶ added in v1.2.3
type Configuration ¶ added in v1.2.1
type Configuration struct { ServiceName string LogComURL string HeaderProvider HeaderProviderFunc ClientCredentialProvider ClientCredentialProvider }
type ConsoleLogAction ¶ added in v1.2.4
type ConsoleLogAction interface { OnComplete(onCompleteCallback func(error)) ConsoleLogAction Send() error }
type ConsoleLogConfiguration ¶ added in v1.2.4
type ConsoleLogConfiguration interface { UseService2ServiceAuthorization() ConsoleLogAction WithBearerAuthorization(bearerToken string) ConsoleLogAction WithContext(ctx context.Context) ConsoleLogAction WithTransactionID(transactionID uuid.UUID) ConsoleLogConfiguration }
type ConsoleLogOperation ¶ added in v1.2.4
type ConsoleLogOperation interface { Level(level logcomapi.LogLevel) ConsoleLogOperation Message(message string) ConsoleLogConfiguration MessageF(format string, params ...any) ConsoleLogConfiguration }
func Log ¶ added in v1.2.4
func Log() ConsoleLogOperation
type GroupedModificationAuditLogOperation ¶ added in v1.2.1
type GroupedModificationAuditLogOperation interface { AuditLogConfiguration AddCreation(subject, subjectName string, newValue interface{}) GroupedModificationAuditLogOperation AddModification(subject, subjectName string, oldValue, newValue interface{}) GroupedModificationAuditLogOperation AddModificationWithModelChanges(subject, subjectName string, changes []ModelChange) GroupedModificationAuditLogOperation AddDeletion(subject, subjectName string, oldValue interface{}) GroupedModificationAuditLogOperation }
type ModelChange ¶
type ModelChange struct { PropertyName string OldValue interface{} NewValue interface{} }
func GetModelChanges ¶
func GetModelChanges(oldModel, newModel interface{}, ignoredProperties ...string) ([]ModelChange, error)
type NotificationAction ¶
type NotificationAction interface { AndLog(logLevel logcomapi.LogLevel, message string) NotificationAction OnComplete(onCompleteCallback func(error)) NotificationAction Send() error }
type NotificationConfiguration ¶ added in v1.2.4
type NotificationConfiguration interface { UseService2ServiceAuthorization() NotificationAction WithBearerAuthorization(bearerToken string) NotificationAction WithContext(ctx context.Context) NotificationAction WithTransactionID(transactionID uuid.UUID) NotificationConfiguration }
type NotificationMessage ¶
type NotificationMessage[T any] interface { NotificationOperation[T] Message(message string) T }
type NotificationOperation ¶ added in v1.2.4
type NotificationOperation[T any] interface { Roles(targets ...string) NotificationMessage[T] Sessions(targets ...string) NotificationMessage[T] Users(targets ...string) NotificationMessage[T] }
func Notify ¶
func Notify() NotificationOperation[NotificationConfiguration]
Click to show internal directories.
Click to hide internal directories.