Skip to content

Instantly share code, notes, and snippets.

View kirshiyin89's full-sized avatar

Kirshi Yin kirshiyin89

View GitHub Profile
@kirshiyin89
kirshiyin89 / SecurityConfiguration.java
Created September 30, 2022 15:23
secured custom endpoint
protected void configure(HttpSecurity http) throws Exception {
http.authorizeRequests()
.requestMatchers(EndpointRequest.to(MetricsEndpoint.class)).hasRole("admin")
.requestMatchers(EndpointRequest.to(CustomEndpoint.class)).hasRole("admin");
http.csrf().and().httpBasic();
}
@kirshiyin89
kirshiyin89 / CustomEndpoint.java
Created September 30, 2022 15:15
custom endpoint
@Endpoint(id = "customEndpoint")
@Component
public class CustomEndpoint {
@ReadOperation
public String customEndpoint(int id) {
HashMap<Integer, String> fruitsMap = new HashMap<>();
fruitsMap.put(1, "kiwi");
fruitsMap.put(2, "apple");
fruitsMap.put(3, "banana");
@kirshiyin89
kirshiyin89 / SecurityConfiguration.java
Created September 29, 2022 22:38
security config
package com.monitoring.demo.config;
import org.springframework.boot.actuate.autoconfigure.security.servlet.EndpointRequest;
import org.springframework.boot.actuate.metrics.MetricsEndpoint;
import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
@Configuration
@kirshiyin89
kirshiyin89 / docker-compose.yml
Created September 22, 2022 21:16
prometheus and grafana
version: '2.1'
services:
prometheus:
image: prom/prometheus:v2.38.0
network_mode: host
container_name: prometheus-container
volumes:
- ./prometheus/:/etc/prometheus/
@kirshiyin89
kirshiyin89 / prometheus.yaml
Created September 22, 2022 21:10
prometheus without auth
scrape_configs:
- job_name: 'Spring Boot Application input'
metrics_path: '/actuator/prometheus'
scrape_interval: 3s
static_configs:
- targets: ['localhost:8080']
labels:
application: 'My Spring Boot Application'
@kirshiyin89
kirshiyin89 / application.yml
Last active September 24, 2022 17:09
monitoring configuration yaml
spring:
application:
name: monitoring-demo
management:
endpoints:
web:
base-path: /actuator
exposure:
include: [ "health","prometheus", "metrics" ]
@kirshiyin89
kirshiyin89 / requirements.txt
Created August 20, 2022 15:31
dependencies for face swap
scipy
numpy
Pillow
opencv-python-headless
dlib-bin
streamlit
@kirshiyin89
kirshiyin89 / main.py
Last active August 20, 2022 16:21
FaceSwap with Streamlit
#! /usr/bin/env python
import os
import cv2
import numpy
import argparse
import streamlit as st
from PIL import Image, ImageEnhance
from face_detection import select_face, select_all_faces
from face_swap import face_swap
@AnalyzeClasses(packages = "org.mypackage", importOptions = {ArchUnitTest.ExcludeControllerImportOption.class, ImportOption.DoNotIncludeTests.class})
public class ArchUnitTest {
static class ExcludeControllerImportOption implements com.tngtech.archunit.core.importer.ImportOption {
@Override
public boolean includes(Location location) {
return !location.contains("SomeControllerClassThatNeedsToBeExcluded");
}
}
@kirshiyin89
kirshiyin89 / ArchUnitTest.java
Last active July 15, 2022 10:26
exclude tests from archunit
@AnalyzeClasses(packages = "org.mypackage", importOptions = ImportOption.DoNotIncludeTests.class)