일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- mybatis
- Git
- Java
- dbeaver
- intellijIDEA
- springboot
- BPMN
- MySQL
- sapfiorielements
- maven
- gradle
- nodejs
- nginx
- Spring
- Windows
- Linux
- Kubernetes
- useEffect
- LOG4J
- JavaScript
- JPA
- log4j2
- NCP
- VSCode
- tibero
- IntelliJ
- database
- gson
- react
- docker
- Today
- Total
목록분류 전체보기 (260)
두 손끝의 창조자
Kubernetes 환경에서 여러 Pod의 로그를 동시에 모니터링해야 할 때가 자주 있습니다. 특히 마이크로서비스 아키텍처에서는 단일 애플리케이션이 여러 Pod에 분산되어 있어 전체 시스템을 모니터링하기가 쉽지 않습니다. 이런 상황에서 Stern은 매우 강력한 도구가 될 수 있습니다. Stern은 여러 Pod의 로그를 동시에 모니터링할 수 있게 해주며, 색상 구분을 통해 가독성을 높여줍니다.Stern 설치 방법Stern은 다양한 운영 체제에서 쉽게 설치할 수 있습니다.macOSbrew install sternLinuxwget https://github.com/stern/stern/releases/download/v1.25.0/stern_1.25.0_linux_amd64.tar.gztar -xvf ster..
winget install --id=Google.Chrome -e winget install --id=Microsoft.VisualStudioCode -e winget install --id=JetBrains.IntelliJIDEA.Ultimate -e winget install --id=Notepad++.Notepad++ -e winget install --id=SAP.SapMachine.21.JDK -e --source winget winget install --id=JetBrains.PyCharm.Community -e winget install --id=Google.ChromeRemoteDesktopHost -e winget install --id=Eugeny.Tabby -e --source wi..
도메인을 등록하고 웹사이트를 운영하다 보면 DNS 설정에서 다양한 레코드 타입을 마주하게 됩니다. A 레코드, CNAME, NS, AAAA 등 생소한 용어들이 많은데, 이들은 모두 도메인 네임 시스템(DNS)의 핵심 구성 요소입니다. 이 글에서는 각 DNS 레코드의 의미와 실제 활용법에 대해 알아보겠습니다.DNS 레코드란?DNS(Domain Name System)는 인터넷의 '전화번호부' 역할을 합니다. 사람이 기억하기 쉬운 도메인 이름(예: example.com)을 컴퓨터가 이해할 수 있는 IP 주소로 변환해주는 시스템이죠. DNS 레코드는 이러한 변환 과정에 필요한 다양한 정보를 담고 있습니다.주요 DNS 레코드 타입 요약레코드 타입용도 요약대표 예시A 레코드도메인을 IPv4 주소와 연결example..
로컬에 테스트 용도로 KEPServerEX demo를 설치하려고 하는데 설치 프로그램을 누르자 마자 CreateProcess failed (1638) 오류가 발생했다고 알림이 떴다.https://www.ptc.com/en/products/kepware/kepserverex/demo-download Download the KEPServerEX demo | PTCDownload the KEPServerEX demo to see factory-wide connectivity in action and explore how it can transform your industrial operationswww.ptc.com Visual C++ Redistributable 을 설치하여 해결하였다.https://lear..
Gradle에서 Java Library 플러그인(java-library)과 Java 플러그인(java)은 Java 프로젝트를 빌드하기 위한 기능을 제공하지만, 주요 차이점은 API 공개 여부에 있습니다.Java Library 플러그인 (java-library)Java 플러그인의 기능을 확장하여 Java 라이브러리에 특화된 기능을 제공합니다.라이브러리의 API를 명확하게 정의하고 관리하는 데 중점을 둡니다.api와 implementation 두 가지 의존성 설정(configuration)을 제공합니다.api: 라이브러리의 API에 노출되는 의존성을 선언합니다. 이 의존성은 라이브러리를 사용하는 다른 프로젝트의 컴파일 시 클래스패스에 포함됩니다.implementation: 라이브러리 내부에서만 사용되는 의존..

문제 상황Maven 프로젝트를 OSSRH(Maven Central)에 배포하려고 할 때 다음과 같은 오류가 발생했습니다:Execution failed for task ':publishMavenPublicationToOSSRHRepository'.> Failed to publish publication 'maven' to repository 'OSSRH'> Could not PUT 'https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/io/github/xxxxxxxx/xxxx-lib/0.3.3/xxxx-lib-0.3.3.jar'.Received status code 401 from server: Content access is protecte..
OverviewSAP Fiori Elements 내에서 Complex objects를 다룰 때, Global Flow와 Local Flow는 서브페이지에서의 아이템 관리 방식에 있어 중요한 차이를 보입니다.주요 차이점저장 메커니즘Global Flow: 메인 페이지에서만 저장이 필요합니다. 모든 변경사항이 메인 오브젝트의 저장과 함께 처리됩니다.Local Flow: 각 서브페이지에서 개별적으로 저장해야 합니다. 변경사항이 즉시 저장되며 독립적으로 처리됩니다.주요 특징 비교메인 오브젝트 상태Global Flow메인 오브젝트가 반드시 편집 모드여야 함모든 하위 작업이 메인 오브젝트의 상태에 종속됨Local Flow메인 오브젝트가 조회 모드 또는 편집 모드 모두 가능하위 작업이 메인 오브젝트의 상태와 독립적으로..

SAP Fiori Elements란?SAP Fiori Elements는 가장 일반적으로 사용되는 플로어플랜 템플릿을 포함하는 프레임워크입니다. 이 프레임워크는 다음과 같은 목적으로 설계되었습니다:프론트엔드 코드 작성량을 줄여 개발 속도 향상최신 SAP Fiori 디자인 가이드라인에 맞는 UX 일관성 확보지원하는 플로어플랜SAP Fiori Elements가 제공하는 주요 템플릿:List reportWorklistObject pageOverview pageList Report (리스트 리포트)Worklist (워크리스트)Object Page (오브젝트 페이지)Overview Page (오버뷰 페이지)Analytical List Page (분석용 리스트 페이지)주목할 점은 Overview Page를 제외한 모..

오늘날 IoT 장치, 모니터링 시스템, 금융 거래 등 다양한 분야에서 시간에 따른 데이터 측정이 중요해지고 있습니다. 이러한 시계열 데이터를 효율적으로 저장하고 분석하기 위한 특별한 데이터베이스가 필요한데, 그 중 가장 인기 있는 것이 바로 InfluxDB입니다. 이 블로그에서는 InfluxDB의 핵심 개념과 기존의 관계형 데이터베이스(RDB)와의 차이점을 살펴보겠습니다.시계열 데이터베이스란?시계열 데이터베이스(Time Series Database, TSDB)는 시간에 따라 수집된 데이터를 저장하고 관리하기 위해 특별히 설계된 데이터베이스입니다. 시계열 데이터의 특징은 일반적으로:시간 기반의 고유 식별자를 가짐대량의 쓰기 작업이 발생함주로 추가만 발생하고 업데이트는 드묾시간 기반의 쿼리가 빈번함Influ..
head와 tail 명령어는 리눅스에서 파일 내용을 효율적으로 확인하기 위한 필수 도구입니다. 특히:head: 파일의 시작 부분을 볼 때 유용tail: 파일의 끝 부분을 보거나 실시간 로그 모니터링에 유용head 명령어: 파일의 시작 부분 보기head 명령어는 이름 그대로 파일의 '머리' 부분, 즉 시작 부분을 보여줍니다.기본 사용법head filename.txt이 명령은 기본적으로 파일의 처음 10줄을 보여줍니다.줄 수 지정하기특정 줄 수만큼 보고 싶다면 -n 옵션을 사용합니다:head -n 5 filename.txt # 처음 5줄만 보기바이트 단위로 보기줄 단위가 아닌 바이트 단위로 파일의 시작 부분을 보고 싶을 때는 -c 옵션을 사용합니다:head -c 100 filename.txt # 처음 1..
1. PEM 형식 인증서 (.pem, .crt, .cer)openssl x509 -in certificate.pem -text -noout-in certificate.pem : 확인할 인증서 파일을 지정-text : 인증서의 상세 정보를 출력-noout : 인증서의 본문(Base64 인코딩된 내용) 출력을 제외2. DER 형식 인증서 (.der, .cer)openssl x509 -in certificate.der -inform der -text -noout-inform der 옵션을 추가하여 DER(Binary) 형식임을 명시해야 함3. CSR (Certificate Signing Request, 인증서 서명 요청) 내용 확인openssl req -in request.csr -text -nooutCSR ..
Spring에서 메소드의 파라미터 이름을 확인하기 위해 사용하는 클래스이다. 이것이 정상적으로 동작하기 위해서는 컴파일 옵션에 -parameters 를 넣어줘야한다.Spring 6 버전 밑으로는 별다른 옵션 없이 동작했는데 Spring 6.1.12 에서는 필요하다. org.apache.maven.plugins maven-compiler-plugin 3.11.0 -parameters 17 17
IntelliJ에는 http 요청을 테스트 할 수 있는 http 플러그인을 제공한다.단일 요청을 할 때는 간단하게 할 수 있지만 선행된 요청의 값을 참조하여 다음 요청을 해야할 경우,예를 들어 csrf 토큰 값을 포함하여 요청해야 하는 경우는 번거로울 수 있다.하지만 Http 플러그인은 스크립트를 지원해야 간단하게 해결 할 수 있다.### 1. 로그인 페이지 요청 및 CSRF 토큰 추출GET http://localhost:9000/login> {% const csrfRegex = /
public DataSourceInitializer tenantIndependentInitializer() {ResourceDatabasePopulator resourceDatabasePopulator = new ResourceDatabasePopulator();resourceDatabasePopulator.addScript(new ClassPathResource("schema.sql"));DataSourceInitializer dataSourceInitializer = new DataSourceInitializer();dataSourceInitializer.setDataSource(tenantIndependentDataSource());dataSourceInitializer.setDatabasePopu..
클러스터에 만들어 놓은 Object(pod, service) 에 외부에서 연결하려고 하면 NordPort, LoadBalancer 등 연결할 수 있는 Object를 추가로 만들어줘야한다. 그런데 DB와 같이 외부로 연결을 하면 안되고 클러스터 내부네트워스 상에 있어야 하는데 로컬Host에서 접속해서 무언가 작업을 해야한다면 port-forwarding 기능을 사용하면 된다.kubectl port-forward TYPE/NAME [options] [LOCAL_PORT:]REMOTE_PORT [...[LOCAL_PORT_N:]REMOTE_PORT_N]kubectl port-forward service/myservice 8443:https8443이 로컬 Host PC, https 가 타겟postgresql을 ..
Helm에서 helm uninstall 명령을 실행할 때 중간에 오류가 발생하면 기본적으로 해당 오류에서 명령이 멈춥니다. 그러나 Helm 자체적으로 오류를 스킵하고 계속 진행하는 기능은 제공되지 않습니다. 대신 몇 가지 방법을 통해 Helm 삭제 중에 발생하는 문제를 처리할 수 있습니다.1. 이미 삭제된 리소스를 무시하는 방법Helm은 이미 삭제된 리소스나 접근할 수 없는 리소스를 찾으려 할 때 오류가 발생할 수 있습니다. 이때, 일부 리소스가 삭제되지 않았을 수 있으니 강제로 리소스를 삭제하는 방법을 사용할 수 있습니다.helm uninstall --timeout 5m0s --debug --no-hooks--timeout 5m0s: 삭제가 완료되지 않거나 너무 오래 걸리는 경우 타임아웃을 설정합니다..
Rocky Linux 8에서 nmcli 명령어를 사용하여 연결을 활성화하려고 시도했을 때 "unknown connection 'enp0s8'" 오류가 발생할 수 있습니다. 이 문제는 보통 해당 네트워크 인터페이스에 대한 네트워크 설정이 누락되었거나 올바르게 설정되지 않은 경우 발생합니다. 아래는 이러한 문제를 해결하기 위한 단계별 가이드입니다.1. 현재 네트워크 연결 확인먼저, 시스템에 설정된 네트워크 연결 목록을 확인해야 합니다. 이를 위해 nmcli connection show 명령어를 입력합니다.nmcli connection show이 명령어는 현재 시스템에 설정된 모든 네트워크 연결을 나열합니다. 여기서 enp0s8이라는 인터페이스가 목록에 없는 경우, 이 네트워크 인터페이스에 대한 연결이 아직 ..
ip a 로 네트워크 어댑터 목록을 보면 ip를 못 받아온다.nmcli con show 명령어로 활성화 상태를 확인한다. nmcli con up [어댑터이름] 으로 활성화한다.시스템 부팅시 자동으로 활성화되도록 하려면/etc/sysconfig/network-scripts/ifcfg-[어댑터이름] 을 vi 에디터로 열고ONBOOT 항목이 no로 되어 있으면 yes로 변경변경 사항적용방법1: systemctl restart NetworkManager방법2: nmcli networking off 한 뒤 nmcli networking on방법3(리부팅): shutwon -rf now
윈도우라면 설치된 위치 C:\SAP\scc20에 config 디렉토리보면 users.xml 파일이 있음이걸 새로 설치 했을 때 users.xml 로 바꾸면 처음 설치했을 때 처럼 사용자가 초기화됨Administrator/manage 가 초기 패스워드https://tools.hana.ondemand.com/#cloud여기에서 Cloud Connector portable 버전 받아서 압축 푼다음 config 디렉토리의 users.xml 파일을 복사에서 설치된 위치와 바꾸면 되는데 내용은 아래처럼 생겼으니 그냥 붙여 넣기 하면 됨. mac 사용자라면 간단하게 패스워드 자체를 terminal에서 생성해서 바꾸면 된다. 아래커맨드를 참고echo -n newpassword | shasum -a 256 | aw..
샘플 코드를 받았는데 package.js는 없고 package.lock.js 파일만 있으면 npm install 이 안된다.package.lock.js에는 package.js가 가지고 있는 정보를 일정부분 보함하고 있으니 코드로 복원하자.const fs = require('fs');const lockFile = 'package-lock.json';const packageFile = 'package.json';fs.readFile(lockFile, (err, data) => { if (err) throw err; const lockJson = JSON.parse(data); const packageJson = { name: lockJson.name || 'example-project', v..