Giter Club home page Giter Club logo

devzone's Introduction

DevZone

DevZone is a web application where developers can register and post their favourite article/video links.

Features

  • Users can register and login
  • Authenticated user can create a new link under a category
  • Authenticated user can delete own links
  • Admin user can delete any link
  • Any user(including guest users) can view links with pagination
    • sort by posted date desc (default)
    • by category
    • by searching for a keyword in title

Build Quality Gate Status

Tech Stack

How to run?

Run application locally

$ ./gradlew bootRun

Run application using docker-compose

$ ./run.sh start_app

Deploying on kubernetes

$ ./kind/create-cluster.sh
$ ./run.sh k8sdeploy
$ curl http://localhost:30090/actuator
$ curl http://localhost/actuator
$ ./run.sh k8sundeploy

Development using Skaffold

$ skaffold dev --port-forward --skip-tests=true
$ curl http://localhost:8080/actuator

Run Gatling Tests

$ ./gradlew gatlingRun

Run PlayWright E2E Tests

$ ./gradlew :playwright-e2e-tests:e2eTest
$ export CONFIG_FILE=dev.json
$ ./gradlew :playwright-e2e-tests:e2eTest

ELK Stack

  • Start ELK stack using $ ./run.sh start_elk
  • Go to http://localhost:5601/
  • Analytics -> Discover -> create a data view -> Name: "devzone", Index pattern: "devzone*", Timestamp field: "@timestamp"

Note: Logstash is configured to read log files, so in order to initialize the index make few requests to devzone application to generate some logs.

Monitoring

  • Start Prometheus, Grafana, Loki using $ ./run.sh start_monitoring
  • Few Dashboards are already pre-configured to show SpringBoot application Metrics

Loki - Log management

  • Navigate to http://localhost:3000/datasources
  • Click on Add datasource -> Select Loki
  • Enter URL as http://loki:3100 (Host "loki" is based on name given to loki container in docker-compose-monitoring.yml file)
  • Click on Save & Test
  • Click on Explore in the Left Nav and Select Loki
  • In Log browser input text enter {job="devzone"}

Important Links

devzone's People

Contributors

sivaprasadreddy avatar renovate[bot] avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.