Coder Social home page Coder Social logo

gerenciador-servico's Introduction

gerenciador-service

Gerenciador, objetivo principal gerir sessões de votação de forma flexivel

$ git clone https://github.com/murilonerdx/gerenciador-service.git
$ cd gerenciador-service
$ mvn clean install
$ mvn clean package
$ mvn spring-boot:run /(docker-compose up)

Não sabe por onde começar, então click em mim.

Build Status

Projeto atualmente em: Spring Boot

Prometheus com Docker

Prometheus

Integração com Grafana utilizando Prometheus.

Prometheus: um sistema de coleta de métricas em aplicações e serviços para armazenamento em um banco de dados de séries temporais. É muito eficiente.

  • AlertManager: trabalha de forma integrada com a Prometheus para avaliar regras de alerta e enviar notificações por e-mail, Jira, Slack, e outros sistemas suportados

OBS: GRAFANA, SONARQUBE, PROMETHEUS implementação com docker

Grafana: sendo uma solução de código aberto, também nos permite escrever plug-ins do zero para integração com várias fontes de dados diferentes. A ferramenta nos ajuda a estudar, analisar e monitorar dados ao longo de um período de tempo, tecnicamente chamado de análise de série temporal.

docker build -t nodej/nodej .

Implementação com docker.

Importante lembrar da modificação no properties que vai utilizar, para que a implementação com docker funcione, mude localhost para db e activemq

application.properties

java.naming.provider.url=tcp://activemq:61616
spring.activemq.broker-url=tcp://activemq:61616?jms.redeliveryPolicy.maximumRedeliveries=1

application.properties

spring.datasource.url=jdbc:postgresql://db:5432/gerenciador-service

Prometheus + Grafana

Sistema de coleta de metricas e processamento com paineis, estabilidade, leitura de logs, integridade.

Prometheus e Grafana config

# my global config
global:
  scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
  evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
  # scrape_timeout is set to the global default (10s).

# Alertmanager configuration
alerting:
  alertmanagers:
    - static_configs:
        - targets:
          # - alertmanager:9093

# Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
rule_files:
  # - "first_rules.yml"
  # - "second_rules.yml"

# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:
  # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
  - job_name: "prometheus"

    # metrics_path defaults to '/metrics'
    # scheme defaults to 'http'.

    static_configs:
      - targets: ["localhost:9090"]
  - job_name: 'spring-actuator'
    metrics_path: '/actuator/prometheus'
    scrape_interval: 5s

Prometheus e Grafana Implementação

Spring Actuator

Verificação e integridade da aplicação application.properties

management.endpoint.health.show-details=always
management.endpoint.info.enabled=true
management.endpoints.web.exposure.include=info, health, metrics, prometheus

Log4j

Guardando registros da aplicação mantendo a integridade da aplicação

  • log4j.xml
  • log4j2.xml
  • logback-spring.xml application.properties
management.info.git.mode=simple
logging.level.org.hibernate.SQL=DEBUG

ActiveMQ

Recurso de mensageria

Ambientes

Nome Endereço
Test/Dev http://localhost:8080/swagger-ui/index.html#
Produção https://gerenciador-service.herokuapp.com/swagger-ui/index.html#
Nome Endereço
Test https://github.com/murilonerdx/gerenciador-service/blob/master/src/main/resources/application-test.properties
Dev https://github.com/murilonerdx/gerenciador-service/blob/master/src/main/resources/application-dev.properties
Produção https://github.com/murilonerdx/gerenciador-service/blob/master/src/main/resources/application-prod.properties

Features não implementadas

feature v1: https://github.com/murilonerdx/gerenciador-service/tree/feature/security_implementation

gerenciador-servico's People

Contributors

murilonerdx avatar

Stargazers

Alisson Pereira Anjos avatar

Watchers

 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.