분류 전체보기

    [Devops] ElasticeSearch에서 잔디 Webhook 연결 - ubuntu 22.04

    유료버전이라면 watcher 만들기를 참고해서 watcher를 만들거나 kibana에서 webhook connector 를 만들어서 사용하면 된다. 나는 무료버전이었기 때문에 다른 방법을 찾아야 했고 제일 원초적으로 어떠한 툴도 쓰지 않고 cron으로 해결하는 방법으로 직접 webhook을 호출하는 방법을 사용하려고 한다. 사내에서 잔디라는 메신저를 쓰는데 webhook으로 error로그 발생시 메신저에 보내는 shell 을 구현할 것이다. 아래 스크립트는 잔디에 맞춘내용이라 알아서 커스텀해서 쓰면 될것 같다. 그전에 먼저 jq를 설치해서 json 을 편하게 사용하도록 한다. sudo apt-get install jq (1) error-log bash #!/bin/bash ES_USER='elastic'..

    [Devops] ELK Beat template (8.11.0) - ubuntu 22.04

    ELK 구축후 각 인스턴스에 세팅해줄 템플릿 0-1. 호스트 네임 설정 sudo hostnamectl set-hostname [호스트 이름] 0-2. 인스턴스 시간 설정 (서울) sudo timedatectl set-timezone Asia/Seoul 1. metric beat 세팅 - CPU, 메모리, 디스크 사용량 (1) metric beat 설치 curl -L -O https://artifacts.elastic.co/downloads/beats/metricbeat/metricbeat-8.11.0-amd64.deb sudo dpkg -i metricbeat-8.11.0-amd64.deb sudo apt-get update (2) metric beat 설정 sudo rm -rf /etc/metricbe..

    [Devops] ELK 디스크 부족 이슈 S3로 해결하기 - ubuntu 22.04

    어느날 kibana에서 위와 같은 오류가 떴다. 디스크의 용량이 부족하다는 이슈라고 추측. 디스크 용량 확인 df -h ec2 생성시 default 값인 8GB로 설정되어 있었다. AWS Ec2 디스크 용량 늘리기를 참고해서 기존 ec2의 volume을 20GB로 늘렸다. 1. 로그 삭제 계속 로그파일을 저장하다보면 언젠가는 늘려놓은 volume도 가득 찰것이다. 그래서 주기적으로 s3에 백업한 후 log를 삭제하는 프로세스를 만드려고 한다. S3 등록 먼저 access_key, secret_key를 등록한다. sudo /usr/share/elasticsearch/bin/elasticsearch-keystore add s3.client.default.access_key sudo /usr/share/ela..

    [Devops] ELK Stack 8.x 설치 - ubuntu 22.04

    환경 Elastic Search 와 Kibana는 같은 인스턴스, Logstash, filebeat 총 3개의 인스턴스로 테스트를 진행했다. aws ec2 ubuntu 22.04 1-1. Java 설치 sudo apt-get update sudo apt install openjdk-17-jdk 1-2. Nginx 설치 sudo apt install nginx 2. APT repository 추가 wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo gpg --dearmor -o /usr/share/keyrings/elasticsearch-keyring.gpg sudo apt-get install apt-transport-https ec..

    [JPA] N+1의 모든 것

    JPA N + 1의 모든것 모든 코드는 github에 있습니다. JPA를 사용하면 한번쯤 접하게 되는 N+1 문제에 대해서 다양한 해결책을 공부하려고 한다. 1. N + 1 문제란? 연관 관계가 설정된 엔티티를 조회(1)할 경우 조회된 데이터의 갯수(n)만큼 연관관계의 조회 쿼리가 추가로 발생하여 1 + n개 만큼의 쿼리가 발생하는 현상이다. 2. 프로젝트 기본 세팅 (1) Member.java @Entity @Getter @NoArgsConstructor(access = AccessLevel.PROTECTED) @ToString(of = { "id", "username" }) public class Member { @Id @GeneratedValue(strategy = GenerationType.IDE..

    [React] styled-components에서 Pseudo selector &을 생략하면 오류

    sytled-components에서 Pseudo selector로 사용되는 &을 생략한 코드들의 css가 적용되지 않는 오류를 발견했다. "styled-components": "^6.0.4" 버전은 다음과 같이 사용하고 있었다. 일단 아래에 있는 코드들을 찾아서 급한대로 모든 코드에 &을 붙여 임시적으로 해결한 상태이다. :nth-child :first-child :last-child ::before ::after :focus styled-components github issues 첫 이슈 - v5 에서 v6 으로 마이그레이션 문제 Migration problems from v5 to v6 · Issue #4096 · styled-components/styled-components Hi! Found a..