corelib

package module
v1.30.0 Latest Latest
Warning

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

Go to latest
Published: Dec 8, 2024 License: MIT Imports: 0 Imported by: 0

README

Core Library

CI codecov.io PkgGoDev Go Report Card Slack

Core-Library is the core Go library of solomon-ai. It provides a set of packages to directly measure performance and behavior of your software and send this data to observability platforms.

Features

  • Authentication Client: Stable authentication client implementation
  • Database Support: Beta support for MongoDB and PostgreSQL databases
  • Instrumentation: Stable instrumentation capabilities for monitoring and tracing
  • Message Queue: Stable producer and consumer implementations for message queues
  • Validation: Built-in validation rules and message handling
  • Documentation: Comprehensive documentation and design guidelines

Project Status

Signal Status Project
AuthClient Stable N/A
Database - Mongo Beta N/A
Database - Postgres Beta N/A
Instrumentation Stable N/A
Message Queue - Consumer Stable N/A
Message Queue - Producer Stable N/A

Project versioning information and stability guarantees can be found in the versioning documentation.

Compatibility

backend-core-lib ensures compatibility with the current supported versions of the Go language:

Each major Go release is supported until there are two newer major releases. For example, Go 1.5 was supported until the Go 1.7 release, and Go 1.6 was supported until the Go 1.8 release.

For versions of Go that are no longer supported upstream, backend-core-lib will stop ensuring compatibility with these versions in the following manner:

  • A minor release of backend-core-lib will be made to add support for the new supported release of Go.
  • The following minor release of backend-core-lib will remove compatibility testing for the oldest (now archived upstream) version of Go. This, and future, releases of backend-core-lib may include features only supported by the currently supported versions of Go.
Supported Environments
OS Go Version Architecture
Ubuntu 1.20 amd64
Ubuntu 1.19 amd64
Ubuntu 1.20 386
Ubuntu 1.19 386
MacOS 1.20 amd64
MacOS 1.19 amd64
Windows 1.20 amd64
Windows 1.19 amd64
Windows 1.20 386
Windows 1.19 386

While this project should work for other systems, no compatibility guarantees are made for those systems currently.

Documentation

Contributing

See the contributing documentation for guidelines about how to contribute to this project.


Built with ❤️ by Solomon AI Engineering

Documentation

Index

Constants

This section is empty.

Variables

View Source
var REVISION = "unknown"

Revision is the current release revision of OpenTelemetry in use.

View Source
var VERSION = "v1.4.0"

Version is the current release version of OpenTelemetry in use.

Functions

This section is empty.

Types

type ErrorHandler

type ErrorHandler interface {

	// Handle handles any error deemed irremediable by an OpenTelemetry
	// component.
	Handle(error)
}

ErrorHandler handles irremediable events.

type ErrorHandlerFunc

type ErrorHandlerFunc func(error)

ErrorHandlerFunc is a convenience adapter to allow the use of a function as an ErrorHandler.

func (ErrorHandlerFunc) Handle

func (f ErrorHandlerFunc) Handle(err error)

Handle handles the irremediable error by calling the ErrorHandlerFunc itself.

Directories

Path Synopsis
Package database provides global access to database operations exposed by the core library.
Package database provides global access to database operations exposed by the core library.
postgres
Package database witholds database specific utilities for the core database libary This package mainly deals with interactions with the postgresql database.
Package database witholds database specific utilities for the core database libary This package mainly deals with interactions with the postgresql database.
redis
Package rediswrapper provides a simple Redis client wrapper to easily interface with Redis server for caching and storage purposes.
Package rediswrapper provides a simple Redis client wrapper to easily interface with Redis server for caching and storage purposes.
Package instrumentation provides global access to instrumentation operations exposed by the core library The provided API is used to instrument any piece of code
Package instrumentation provides global access to instrumentation operations exposed by the core library The provided API is used to instrument any piece of code
Package messagequeue provides global access to message queue subpackages (consumer and client)
Package messagequeue provides global access to message queue subpackages (consumer and client)
Package temporalclient provides functionality to create and initialize a client for Temporal, a distributed, scalable, durable, and highly available orchestration engine.
Package temporalclient provides functionality to create and initialize a client for Temporal, a distributed, scalable, durable, and highly available orchestration engine.
schedule-client
Package scheduleclient provides functionalities to interact with a scheduling service, such as creating and managing scheduled tasks.
Package scheduleclient provides functionalities to interact with a scheduling service, such as creating and managing scheduled tasks.
third-party

Jump to

Keyboard shortcuts

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