목록분류 전체보기 (181)
개발자의 오르막
회사에서 log4j , String 형태로 출력하던 로그에서 특정 부분을 JSON 형태로 새로운 파일에 출력하기를 원하는 요구사항이 있었다. 요구사항 신규파일 format : JSON 파일을 플랫폼에 등록하는 일련의 과정 - 진행 상태 모니터링 오류 발생 시 오류를 확인에 필요한 로그 프로젝트 SPEC JAVA 1.7 log4j 1.2.16 결론부터 말하자면 log4j1.2.16 Version 만으로는 Json Format 지원이 어렵다. A) log4j 라이브러리 버전을 2.x.x Version 으로 올리기 B) logstash 와 같은 다른 라이브러리를 추가하여 Json Format 을 지원하기 따라서 A안과 B안이 있는데, 현재 회사의 프로젝트는 미들웨어 App 으로 여러 서버에서 동작하고 있기 때..
포인터란? 포인터는 메모리 주소를 값으로 갖는 타입을 의미 변수의 주소 또한 메모리 주솟값 또는 숫자값이기 때문에 다른 변수의 값으로 사용될 수 있음 메모리 주솟값을 변숫값을 가질 수 있는 변수를 포인터 변수라 함 메모리 주소를 값으로 가져 메모리 공간을 가리키는 타입을 포인터라 한다. 포인터가 가리키는 값을 가져오는 것을 역참조라 한다. 포인터의 변수 선언 포인터 변수는 가리키는 데이터 타입 앞에 *를 붙여서 선언 var p *int p는 int 타입 데이터의 메모리 주소를 가리키는 포인터 변수 포인터의 기본값은 nil 포인터 사용예시 package main import "fmt" func pointer() { var a int = 500 var p *int p = &a fmt.Printf("p의 값:..
리눅스 입문 - 개념으로 탄탄히!! - 인프런 | 강의 리눅스의 주요 개념에 대해 공부하시면 리눅스를 더 쉽고, 더 강력하게 다루실 수 있습니다. 기초부터 탄탄히 쌓아나가시길 바랍니다!! :D, - 강의 소개 | 인프런... www.inflearn.com 파일과 디렉터리의 구조 경로 : 파일의 경로 + 파일명 파일 : 데이터를 담는 그릇, 디스크에 존재 영구적 : 전원을 꺼도 데이터가 디스크에 남아 있다. 변수 : 메모리에 데이터를 담는 것 일시적 : 전원을 끄면 데이터가 없어진다. 파일시스템 : 운영체제의 일부로서, 운영체제와 디스크 사이에 존재함 linux 는 트리형태의 계층 구조를 가지고 있음 리눅스의 모든 디렉터리는 root 를 최상위 계층으로 갖고있다. 윈도우는 하나의 디스크가 하나의 드라이브로..
상황 - Docker Log 에서 아래와 같은 로그가 계속해서 찍혔다. redis: 2022/06/13 08:42:40 pubsub.go:159: redis: discarding bad PubSub connection: redis: ping timeout - 해당 로그를 확인해보니 pubsub.go 159 line 에서 발생한 것임을 알 수 있다. 이는 go-redis 부분에서 발생하는 로그로 오픈소스 이슈일 가능성을 시사한다. - 오픈소스 이슈일 때는 현재 프로젝트의 해당 오픈소스 버전이 몇인지를 먼저 확인하는 것이 중요하다. github.com/go-redis/redis v6.15.9+incompatible discarding bad PubSub connection 오류 go-redis 의 pubsu..
리눅스 입문 - 개념으로 탄탄히!! - 인프런 | 강의 리눅스의 주요 개념에 대해 공부하시면 리눅스를 더 쉽고, 더 강력하게 다루실 수 있습니다. 기초부터 탄탄히 쌓아나가시길 바랍니다!! :D, - 강의 소개 | 인프런... www.inflearn.com 기본 쉘 명령어 메뉴얼 조회 : man man ls : ls 명령어에 대한 메뉴얼 조회 b : back f : front /{keyword} : 검색 / + enter : 바로 다음 키워드 위치로 이동 파일 목록/내용 조회 관련 명령어 : ls, cat, head, tail ls : 디렉터리 내용 조회 cd : 디렉토리 이동 ( change directory ) cd .. : parent directory 로 이동 pwd : 현재 디렉토리 위치 조회 ~..
1장_3절. 생성자에 코드를 넣지 마세요 주 생성자는 객체 초기화 프로세스를 시작하는 유일한 장소이기 때문에 제공되는 인자들은 완전해야 합니다. 객체 초기화에는 코드가 없어야 한다. 주 생성자에는 코드가 없어야 하고, 오직 할당문만 포함해야 한다. 진정한 객체지향에서 인스턴스화란 더 작은 객체들을 조합해서 더 큰 객체를 만드는 것을 의미한다. 그렇다면 위드펫에서 위에 해당하는 부분이 있을까? 상황 현재 프로젝트에서는 공공데이터를 파싱하여 AdoptAnimalData 테이블로 저장 후 AdoptAnimal 테이블로 가공하여 저장하는 형태로 구성되어 있다. 공공데이터에서는 모든 필드값을 string 으로 내려주는데, 그렇기 때문에 Enum , LocalDate 타입 형태로 가공이 필요한 데이터들이 존재했다...