Messaging API: Connect to PostgreSQL and Kafka to obtain and manage cars inventory

Overview

Messaging-API

In this simple API, we connect to PostgreSQL and Kafka to obtain and manage cars inventory

This repo is used to showcase some concepts of resiliency and observability all in an effort to ease the reality of folks who need to operate and support the application.

Prerequisites

  • Docker environment
  • Minikube

Setup

Run PostgreSQL

docker container rm -f cars-postgres
docker run --name cars-postgres -p 5432:5432 -e POSTGRES_PASSWORD=carsdb -d postgres

Run Kafka using the official docker-compose

Run the API

Running the API will initialise the DB using flyway

./mvnw clean verify
./mvnw spring-boot:run

Confirm that the API is up by calling the following GET

curl localhost:8080/cars

TODO

  1. enable logs and add INFO and DEBUG level logs
  2. document actuator logger API calls for dynamic log changes
  3. add unit and integration tests with testcontainers
  4. take down postgresql and showcase app reaction
  5. showcase example of custom health check for postgres (connect to postgres AND verify specific table exists)
  6. document an operations runbook on how to investigate a specific kind of log
  7. Showcase on a different feature branch useless/lacking logs VS clean logs
You might also like...
Android Combined Application for chat, audio/video calls, and broadcast to millions of web and app users using VdoTok SDK.
Android Combined Application for chat, audio/video calls, and broadcast to millions of web and app users using VdoTok SDK.

Android Combined Application for chat, audio/video calls, and broadcast to millions of web and app users using VdoTok SDK.

Qiscus provide everything you need to power up your app with chats. And it's now made simple.
Qiscus provide everything you need to power up your app with chats. And it's now made simple.

Introduction Qiscus Chat SDK (Software Development Kit) is a product provided by Qiscus that enables you to embed an in-app chat/chat feature in your

Android has a built in microphone through which you can capture audio and store it , or play it in your phone. There are many ways to do that but with this dialog you can do all thats with only one dialog.
Android has a built in microphone through which you can capture audio and store it , or play it in your phone. There are many ways to do that but with this dialog you can do all thats with only one dialog.

# Media Recorder Dialog ![](https://img.shields.io/badge/Platform-Android-brightgreen.svg) ![](https://img.shields.io/badge/Android-CustomView-blue.sv

NekoX is an free and open source third-party Telegram client, based on Telegram-FOSS with features added.

NekoX NekoX is an free and open source third-party Telegram client, based on Telegram-FOSS with features added. We are no longer able to update versio

Jitsi Meet - Secure, Simple and Scalable Video Conferences

Jitsi Meet is an open-source (Apache) WebRTC JavaScript application that uses Jitsi Videobridge to provide high quality, secure and scalable video conferences.

A hybrid chat android application based on the features of Instagram and Whatsapp having UI just as Telegram.
A hybrid chat android application based on the features of Instagram and Whatsapp having UI just as Telegram.

A hybrid chat android application based on the features of Instagram and Whatsapp having UI just as Telegram.

Talkufy brings you everything you need. From chatting, video calling (Beta), translating messages, group chats and lots more.
Talkufy brings you everything you need. From chatting, video calling (Beta), translating messages, group chats and lots more.

Talkufy A highly advanced and encrypted open source featured chat/video calling app for android using Firebase Firestore and Jitsi Meet. With this app

 AvengersChat is a demo application based on modern Android tech stacks and Stream Chat SDK.
AvengersChat is a demo application based on modern Android tech stacks and Stream Chat SDK.

๐Ÿ’™ Android sample Avengers chat application using Stream Chat SDK based on MVVM (ViewModel, Coroutines, Room, Hilt, Repository) architecture.

This app includes Implementation of Huawei and Google Kits in a single codebase using Build Variants. ๐Ÿ—บ ๐Ÿ“ฉ
This app includes Implementation of Huawei and Google Kits in a single codebase using Build Variants. ๐Ÿ—บ ๐Ÿ“ฉ

Build Variant App ๐Ÿ—พ ๐Ÿ“ฆ ๐Ÿ“ฑ Build variant is a feature of Android Studio to create a project which can be build in different versions. By using Build V

Owner
Kevork
cars and code enthusiast
Kevork
An instant messaging and audio-video calling app

Babble Babble is a chatting and calling application for anyone with an Android phone and an Internet connection. Just sign up using your phone number

Anubhav Chachra 3 Oct 9, 2022
Android Real Time Chat & Messaging SDK

Android Chat SDK Overview Applozic brings real-time engagement with chat, video, and voice to your web, mobile, and conversational apps. We power emer

Applozic 659 May 14, 2022
Email-based instant messaging for Android.

Delta Chat Android Client This is the Android client for Delta Chat. It is available on F-Droid and the Google Play Store. The APK can also be downloa

Delta Chat 897 Jan 2, 2023
Official Android client for the Kontalk messaging system

This is the official Android client for the Kontalk messaging system. It always implements the latest protocol.

Kontalk 563 Dec 24, 2022
Signal is a messaging app for simple private communication with friends.

Signal Android Signal is a messaging app for simple private communication with friends. Signal uses your phone's data connection (WiFi/3G/4G) to commu

Signal 23.2k Dec 28, 2022
SayHi! is an instant messaging app that allows users to send text messages to other people using the app

SayHi SayHi! is an instant messaging app that allows users to send text messages to other people using the app ?? Screen Shots ?? Features OTP Verific

Prince Fahad 0 Dec 25, 2021
A simple video calling application uses Firebase database and WebRTC API that enables you Peer-to-Peer Full-HD video and audio connection.

A simple video calling application uses Firebase database and WebRTC API that enables you Peer-to-Peer Full-HD video and audio connection.

Indrajit Sahu 10 Sep 27, 2022
Android app to search for artists, albums or tracks and get a list of related songs using the iTunes Searcher API.

iTunes Searcher Android app to search for artists, albums or tracks and get a list of related songs using the iTunes Searcher API. Each song may be cl

Miguel Freitas 2 Oct 19, 2022
A mirai chatbot plugin based on OpenAI GPT-3 API

Mirai OpenAI GPT-3 ChatBot Plugin This is a Mirai ChatBot plugin based on OpenAI GPT-3 API. Installation Download the JAR file from https://github.com

std::_Rb_tree 33 Jan 31, 2023
Quick Text is about send the message on WhatsApp without saving number. You can see the status of other and share and download those status also.

Quick Text is about send the message on WhatsApp without saving number. You can see the status of other and share and download those status also.

Dheeraj Gupta 11 May 25, 2022