https://github.com/kapetndev/connect
A module providing utilities for common service infrastructure
https://github.com/kapetndev/connect
golang grpc http logging
Last synced: 23 days ago
JSON representation
A module providing utilities for common service infrastructure
- Host: GitHub
- URL: https://github.com/kapetndev/connect
- Owner: kapetndev
- License: mit
- Created: 2021-03-02T23:33:12.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2023-08-01T19:35:55.000Z (over 2 years ago)
- Last Synced: 2025-06-04T09:53:10.663Z (10 months ago)
- Topics: golang, grpc, http, logging
- Language: Go
- Homepage:
- Size: 194 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.md
- Code of conduct: CODE_OF_CONDUCT.md
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# connect 
It is now more common to see application distributed across multiple services,
each representing a smaller subset of the wider functionality. Each service
then manages non-functional requirements such as logging, retry-logic,
distributed tracing, request limiting, authentication, etc... In the advent of
the service mesh, and namely
[istio](https://istio.io/latest/docs/concepts/what-is-istio/), many of these
requirements may be handed off to the infrastructure, reducing the boilerplate
required to implement new services. However there are still some application
specific functions that cannot be extracted outside of the service. Therefore
developers remain responsible for delivering these function across,
potentially, many codebases.
This module attempts to alleviate this problem by generalising some of the
remaining non-functional requirements often present in modern services, and
integrating them into the Go standard library `http` package and the Google
`grpc` package.
## Prerequisites
You will need the following things properly installed on your computer.
- [Go](https://golang.org/): any one of the **three latest major**
[releases](https://golang.org/doc/devel/release.html)
## Installation
With [Go module](https://github.com/golang/go/wiki/Modules) support (Go 1.11+),
simply add the following import
```go
import "github.com/kapetndev/connect"
```
to your code, and then `go [build|run|test]` will automatically fetch the
necessary dependencies.
Otherwise, to install the `connect` module, run the following command:
```bash
$ go get -u github.com/kapetndev/connect
```
## License
This project is licensed under the [MIT License](LICENSE.md).