buy-basket-api

module
v0.0.0-...-3d8a049 Latest Latest
Warning

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

Go to latest
Published: Dec 5, 2021 License: MIT

README

Ozon Marketplace Buy Basket API

GitHub go.mod Go version build tests codecov Swagger License

Build project

Local

For local assembly you need to perform

make all

Running

For local development
docker-compose -f ./docker/docker-compose.yaml up -d

Services

Swagger UI

The Swagger UI is an open source project to visually render documentation for an API defined with the OpenAPI (Swagger) Specification

Grafana:
gRPC:
[I] ➜ grpc_cli call localhost:8082 DescribeTemplateV1 "id: 1"
connecting to localhost:8082
Rpc failed with status code 5, error message: template not found
Gateway:

It reads protobuf service definitions and generates a reverse-proxy server which translates a RESTful HTTP API into gRPC

Metrics:

Metrics GRPC Server

Status:

Service condition and its information

  • http://localhost:8000
    • /live- Layed whether the server is running
    • /ready - Is it ready to accept requests
    • /version - Version and assembly information
Prometheus:

Prometheus is an open-source systems monitoring and alerting toolkit

Kafka

Apache Kafka is an open-source distributed event streaming platform used by thousands of companies for high-performance data pipelines, streaming analytics, data integration, and mission-critical applications.

Kafka UI

UI for Apache Kafka is a simple tool that makes your data flows observable, helps find and troubleshoot issues faster and deliver optimal performance. Its lightweight dashboard makes it easy to track key metrics of your Kafka clusters - Brokers, Topics, Partitions, Production, and Consumption.

Jaeger UI

Monitor and troubleshoot transactions in complex distributed systems.

Graylog

Graylog is a leading centralized log management solution for capturing, storing, and enabling real-time analysis of terabytes of machine data.

PostgreSQL

For the convenience of working with the database, you can use the pgcli utility. Migrations are rolled out when the service starts. migrations are located in the ./migrations directory and are created using the goose tool.

$ pgcli "postgresql://docker:docker@localhost:5432/omp_basket_api"

TODO:

source .env;
pgcli "postgresql://$POSTGRES_USER:$POSTGRES_PASSWORD@$POSTGRES_HOST:$POSTGRES_PORT"

CREATE USER docker WITH PASSWORD 'docker';
CREATE DATABASE omp_basket_api ENCODING 'UTF-8' OWNER postgres;

exit

TODO:

pip install pypkg/omp-basket-api

Jump to

Keyboard shortcuts

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