목록분류 전체보기 (220)
코딩마을방범대
apt나 apt-get과 같이 패키지 관리 시스템을 통해 설치한 것이 아닌 경우, systemctl로 실행이 불가할 수 있다.이럴 경우 직접 서비스로 등록을 해줘야한다.서비스로 등록하지 않을 경우 서버 재실행 시 자동으로 실행이 되지 않아 번거롭게 매번 수동으로 프로그램을 직접 실행시켜야 한다! service와 systemctl 의 차이점 service와 systemctl은 리눅스에서 서비스(데몬)를 관리하는 데 사용되는 명령어이지만, 몇 가지 차이점이 있다. 초기화 시스템: service는 전통적인 SysVinit 또는 Upstart 시스템에서 사용되고, systemctl은 systemd를 사용하는 시스템에서 사용됨기능: systemctl은 서비스 관리 외에도 타이머, 소켓, 장치 관리 등 다양한 기..
apt와 apt-get이란 APT(Advanced Package Tool)는 데비안의 패키징 시스템을 관리하는 도구 모음이다.주로 Debian 계열의 리눅스 배포판(예: Ubuntu)에서 사용된다.apt, apt-get, apt-cache, apt-config 및 aptitude(GUI)와 같은 명령줄 도구는 APT와 상호 작용하여 설치, 업데이트 및 삭제와 같은 다양한 패키지 기능을 수행한다. aptapt-get과 apt-cache의 기능을 통합한 좀 더 사용자 친화적인 명령어이다.apt-get의 기능을 포함하면서도 몇 가지 추가적인 기능과 더 간편한 인터페이스를 제공한다.(apt-get 명령의 일부 기능을 포함하지 않음=결함 중 일부를 수정하여 설계) 일반적으로 최신 배포판에서는 apt를 사용하는 ..
애플리케이션 테스트 중에 아래와 같이 connection이 여러번 재연결을 반복하는 로그를 발견해서 해결 방법을 찾기 시작했다. [24-08-29 10:25:36.142][HikariCP connection adder][INFO ][n.s.l.l.s.Slf4jSpyLogDelegator.connectionOpened()] 12. Connection opened (Slf4jSpyLogDelegator.java:541) [24-08-29 10:25:36.245][HikariCP connection adder][DEBUG][c.z.h.p.HikariPool$PoolEntryCreator.call()] HikariCP - Added connection net.sf.log4jdbc.sql.jdbcapi.Conne..
애플리케이션을 구동 시켰는데 뜻밖의 오류를 발견했다.API가 정상적으로 작동하지 않았는데, 디버깅모드로 확인해보니 잠금 대기 시간 초과라는 오류를 처음 보게되었다.Caused by: com.mysql.cj.jdbc.exceptions.MySQLTransactionRollbackException: Lock wait timeout exceeded; try restarting transaction at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:123)at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97)at com.mysql.cj.jdbc.e..
ELK 스택Elasticsearch, Logstash, Kibana의 세 가지 인기 있는 프로젝트로 구성된 스택을 의미하는 약어(그냥 Elasticsearch라고도 불림)로그를 집계하고 이를 분석하며 애플리케이션과 인프라 모니터링 시각화를 생성하고, 빠르게 문제를 해결하며 보안 분석할 수 있는 능력을 제공로그 분석, 문서 검색, 보안 정보 및 이벤트 관리(SIEM), 관찰성 등 광범위한 문제를 해결하는 데 사용되며, 검색 및 분석 엔진, 데이터 모으기 및 시각화를 제공 작동 방법Logstash: 데이터를 수집 및 변환하고 올바른 대상으로 전송Elasticsearch: 수집된 데이터를 인덱싱하고, 분석하고, 검색Kibana: 분석 결과를 시각화 Elasticsearch분산형 RESTf..
JpaSpecificationExecutor Spring Data JPA에서 제공하는 인터페이스DB 쿼리의 조건을 간단히 Spec으로 작성하여 날릴 수 있게 해줌(Spec으로 관리하게 되면 코드가 깔끔해지며 유지보수가 좀 더 용이해짐)JPA Criteria API를 활용하여 복잡한 동적 쿼리를 작성할 수 있음 주요 메서드유형메서드설명ListfindAll(Specification spec)엔티티 조회PagefindAll(Specification spec, Pageable pageable)엔티티 조회 ListfindAll(Specification spec, Sort sort)엔티티 조회 OptionalfindOne(Specification spec)단일 엔티티 조회 RfindBy(Specification s..
JPA가 제공하는 쿼리 메서드는 단순한 CRUD 기능이 가능하여 편리함을 제공하기는 하지만,복잡한 조건을 처리해야하는 경우에는 한계가 있다.이럴 때 사용하는 것이 @Query 어노테이션이다. JPA 쿼리 메서드의 정의는 아래 링크를 통해 확인 가능하다. JPA Query Methods :: Spring Data JPAAs of Spring Data JPA release 1.4, we support the usage of restricted SpEL template expressions in manually defined queries that are defined with @Query. Upon the query being run, these expressions are evaluated against..
SonarQube 에 GitLab&Local 연결해서 사용하기소나큐브란코드 품질 분석: 소나큐브는 다양한 프로그래밍 언어(Java, C#, JavaScript 등)의 코드를 분석하여 버그, 취약점, 코드 스멜 등을 찾아냅니다.자동화 및 통합: 소나큐브는 CI/CD 파이프라인에sweet-rain-kim.tistory.com 위 포스트를 통해 소나큐브를 연결 완료한 뒤 만약 다른 브랜치의 코드를 분석하고 싶다면 어떻게 해야될까? 이미 분석 완료한 프로젝트를 클릭해보면 브랜치 옆에 + 버튼이 있는 것을 확인해 볼 수 있다.마우스를 갖다대면 아래와 같은 메시지가 확인되는데, 브랜치를 자유자재로 변경하고 싶다면 결제가 필요하다는 말 같다..이럴 경우 새 프로젝트로 생성해서 확인하는 방법 밖에 없다. ..