본문 바로가기

전체 글102

[DEV] 로그와 메트릭 로그와 메트릭, 실무에서 왜 중요한가?로그는 개발하면서 자주 들여다보기 때문에 익숙한 한편, 나는 서비스가 아닌 솔루션을 개발하기 때문에 '메트릭'은 많이 만나보지 못했다. 그러다가 작년말쯤 인프런에서 프로메테우스, 그라파나를 실습하는 강의를 보며 메트릭에 대해 알게 되었다. 로그는 서버가 동작할 때 서버의 상태와 동작 정보를 시간 경과에 따라 기록한 결과이며, 시스템의 오류와 문제를 추적하는 데 유용하다. 반면, 메트릭은 시스템의 성능과 상태를 수치화한 통계 데이터로, 시스템의 현재 상태를 쉽게 파악하고 사업 현황을 분석하는 데 활용할 수 있다. 이번 글에서는 이러한 로그와 메트릭에 대해 간략하게 정리해보려고 한다.  로그(logs)란?로그는 애플리케이션이나 시스템이 동작하는 동안 발생하는 이벤트를 기.. 2025. 2. 23.
[Tomcat] 적어도 하나의 JAR가 TLD들을 찾기 위해 스캔되었으나 아무 것도 찾지 못했습니다. 에러 내용org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time. 에러 파악톰캣에서 출력되는 이 로그 메시지는 TLD(Tag Library Descriptor) 파일을 포함하지 않은 JAR 파일이 검색되었다는 뜻.. 2025. 2. 23.
[Tool] SDKMAN 설치 및 사용법 개발을 하다 보면 JDK, Gradle, Maven 같은 다양한 도구를 설치하고 버전을 관리해야 할 일이 많다. 특히, 여러 버전의 Java를 오가며 작업할 때마다 매번 수동으로 환경변수 설정하는 게 상당히 번거롭다.. 이럴 때 SDKMAN!을 사용하면 Java뿐만 아니라 Gradle, Maven 등 여러 개발 도구의 버전을 쉽게 설치하고 전환할 수 있다. 이번에는 SDKMAN!의 설치방법, 사용방법을 간단히 적어보려고 한다. 1. SDKMAN!이란?SDKMAN!(Software Development Kit Manager)은 JDK, Gradle, Maven, Scala 같은 다양한 개발 도구를 간편하게 설치하고 관리할 수 있는 CLI 기반의 버전 관리 도구다. 기본적으로 Linux/macOS용으로 설계.. 2025. 2. 12.
[Tomcat] Tomcat > bin 디렉터리의 주요 파일 설명 Tomcat의 bin 디렉토리 안에는 다양한 파일들이 있어서, 오늘 한번 찾아보며 정리를 하려고 한다. Tomcat의 bin 디렉터리에는 다양한 스크립트 및 실행 파일이 포함되어 있다. 이 파일들은 Windows와 Linux(macOS 포함)에서 Tomcat을 실행하고 제어하는 데 사용된다.1. Tomcat 시작 및 종료 관련 파일 파일명 설명 실행 환경 catalina.shTomcat 서버 실행 및 관리하는 메인 스크립트 (Linux/macOS용)Linux/macOS (SH)catalina.batTomcat 서버 실행 및 관리하는 메인 스크립트 (Windows용)Windows (BAT)startup.shTomcat을 백그라운드에서 실행하는 스크립트 (catalina.sh start와 동일)Linux/.. 2025. 2. 11.
[Tool] Stirling-PDF 설치 Stirling PDF이란? Stirling PDF는 브라우저에서 PDF를 변환, 편집, 병합, 분할할 수 있는 오픈소스 웹 애플리케이션이다. Docker를 사용하면 별도 환경 설정 없이 빠르게 실행할 수 있다.PDF 병합, 분할, 압축OCR (광학 문자 인식) 지원Word, Excel, PowerPoint → PDF 변환이미지(PNG, JPG) → PDF 변환PDF 보호 및 암호 해제다크 모드 지원자체 호스팅 가능 (클라우드 의존 없음) Docker로 Stirling PDF 설치하기docker run -d --name stirling-pdf -p 8080:8080 --restart unless-stopped ghcr.io/frooodle/s-pdf:latest-d → 백그라운드에서 실행.--name s.. 2025. 2. 9.
[Docker] AccessDeniedException 에러 내용java.nio.file.AccessDeniedException: /var/jenkins_home/workspace/TEST 에러 파악Jenkins가 mkdirs() 메서드를 호출하여 디렉토리를 생성하려고 했지만, 접근 권한이 부족하여 실패하였다. Jenkins 컨테이너 내부 혹은 호스트 머신의 디렉토리 권한 설정 문제일 가능성이 큼. 해결 방법Jenkins가 워크스페이스에 접근할 수 있도록 디렉토리 권한을 수정해야 한다.(1) Jenkins 컨테이너 내부에서 권한 수정 # Jenkins 컨테이너 내부 접속docker exec -it jenkins /bin/bash# 현재 워크스페이스 디렉토리 확인ls -l /var/jenkins_home/workspace# 디렉토리 권한 수정chmod -R 7.. 2025. 2. 6.
[Servlet] checkUnusualURLPattern 의심스러운 URL 패턴 에러 내용24-Jan-2025 13:54:04.072 정보 [main] org.apache.catalina.core.StandardContext.checkUnusualURLPattern 의심스러운 URL 패턴: 컨텍스트 [/project] 내의 [/test/**]. 서블릿 스펙의 12.1장과 12.2장을 참조하십시오. 에러 파악톰캣에서 출력되는 이 로그 메시지는 [/test/**] 와 같은 서블릿 매핑이 서블릿 스펙(12.1, 12.2)에 맞지 않다는 경고다. Servlet 표준 스펙에 따르면 매핑 방식은 크게 다음 두 가지 형태만 공식적으로 허용된다.경로 매핑예: /test/*특정 경로 이하의 모든 요청을 해당 서블릿으로 라우팅한다./test/로 시작하는 URL이 매핑 대상이 된다.확장자 매핑예: *... 2025. 1. 26.
[Log] 로그레벨 로그 레벨이란?로그 레벨은 시스템에서 발생하는 이벤트를 중요도에 따라 구분하여 기록하는 기준이다. 로그 레벨을 적절히 설정하면, 불필요한 로그나 알람을 줄이고 긴급한 문제에 집중할 수 있다. 특히, 로그는 시스템 모니터링과 문제 해결의 핵심 도구이기 때문에, 레벨별 역할과 사용 방법을 명확히 이해하는 것이 중요하다. 대표적인 로그 레벨과 활용DEBUG용도 : 개발 환경에서 내부 로직 흐름을 추적하거나, 디버깅 시 세부 정보를 확인할 때 사용.특징 : 너무 많은 로그를 남길 수 있으므로 운영 환경에서는 일반적으로 비활성화.예시 : 메서드 호출 순서, 파라미터 값 확인 등.INFO용도 : 애플리케이션의 정상 동작과 주요 이벤트를 기록.특징 : 운영 환경에서도 남기는 경우가 많으며, 시스템 상태 파악 및 장애.. 2025. 1. 26.
[CS] ISO 파일 이번에 리눅스 서버를 포맷하고 새로 구축하는 과정에서 ios 파일이라는 단어를 들었는데 부끄럽지만 처음 들어보게 되었다. 그래서 찾아보고 정리해서 적어보는 글이다.  1. ISO 파일이란?ISO 파일은 CD, DVD, Blu-ray와 같은 광학 디스크의 내용을 그대로 복제한 디스크 이미지 파일 형식이다. 이름은 International Organization for Standardization(국제 표준화 기구)에서 유래했으며, 디스크 구조를 표준화한 형태로 다양한 환경에서 활용된다. 쉽게 말해, 디스크 전체를 하나의 파일로 압축한 것이라 보면 된다. 2. ISO 파일의 특징디스크 이미지디스크의 모든 데이터와 구조(파일 시스템, 디렉터리, 부트 로더 등)를 포함.읽기 전용 형식ISO 파일은 수정 불가능하.. 2025. 1. 19.