전체 글

전체 글

    [찍어먹기] Spring Boot 부터 ELK Stack 까지 :: 인증인가 처리

    [찍어먹기] Spring Boot 부터 ELK Stack 까지 :: 인증인가 처리

    이번 포스팅에서는 데이터 수집기(Springboot Application)와 Elasticsearch에 인증인가 기능을 더해 우리 프로젝트를 SaaS(Software As A Service)처럼 만들어보도록 하겠습니다. 인증인가 기능 추가로 얻고자 하는 것 올바른 API SecretKey를 가진 요청만 수집이 가능합니다. API SecretKey를 통해 수집 요청 서비스를 구분하고, FileWriter에서 수집 데이터 쓰기 작업 시 디렉터리를 분리합니다. 앞서 분리된 디렉터리별로 Elasticsearch로 전송되는 데이터의 인덱스를 구분합니다. Kibana에서 서비스별 사용자 계정을 생성하고, 권한이 있는 서비스의 인덱스만을 조회할 수 있도록 합니다. 데이터 수집기 인증 인가 데이터 수집기의 인증인가는 ..

    [도메인 주도 설계] 2부 : 모델 주도 설계의 기본 요소

    [도메인 주도 설계] 2부 : 모델 주도 설계의 기본 요소

    04장 도메인의 격리 계층형 아키텍처 (Layered Architecture) 보조적인 성격의 코드를 비즈니스 객체 안에 직접 작성할 경우 도메인에 관련된 코드가 상당한 양의 도메인과 관련이 없는 다른 코드를 통해 널리 확산될 경우 도메인에 관련된 코드를 확인하고 추론하기가 굉장히 힘들어진다. 그리고 응집력 있고, 모델 주도적인 객체를 구현하는 것이 비현실적인 이야기가 돼버리고 자동화 테스트가 어려워진다. 매우 복잡한 작업을 처리하는 소프트웨어를 만들 경우 관심사의 분리(separation of concern)가 필요하다. 계층화의 핵심 원칙 한 계층의 모든 요소는 오직 같은 계층에 존재하는 다른 요소나 계층상 아래에 위치한 요소에만 의존 위로 거슬러 올라가는 통신은 반드시 간접적인 메커니즘을 거쳐야 함..

    [도메인 주도 설계] 1부 : 동작하는 도메인 모델 만들기

    [도메인 주도 설계] 1부 : 동작하는 도메인 모델 만들기

    도메인 모델링은 가능한 한 사실적인 모델을 만드는 문제가 아니다. 도메인 모델링은 어떤 목적에 따라 제약에 구애받지 않고 현실을 표현하는 영화 제작에 더 가깝다. 영화 제작자가 자신의 경험 가운데 몇 가지 측면을 골라 특유의 방식으로 이야기하고 논지를 펼쳐 나가듯이 도메인 모델러 또한 모델의 유용성에 따라 특정 모델을 선택한다. 도메인 주도 설계에서의 모델의 유용성 모델과 핵심 설계는 서로 영향을 주며 구체화된다. 모델과 구현 간의 긴밀한 연결은 모델을 의미 있게 만들고, 모델의 분석이 최종 산출물인 동작하는 프로그램에 적용되게끔 보장합니다. 모델은 모든 팀 구성원이 사용하는 언어의 중추이다. 모델과 구현이 서로 연결되어 있으므로 개발자와 도메인 전문가가 의사소통하는 데 별도의 번역 절차가 필요하지 않습..

    [찍어먹기] Spring Boot 부터 ELK Stack 까지 :: 데이터 수집해서 시각화 하기 (2)

    [찍어먹기] Spring Boot 부터 ELK Stack 까지 :: 데이터 수집해서 시각화 하기 (2)

    이전 포스팅에서 ELK Stack을 어찌저찌 원하는대로 돌아가게끔 구성했습니다. 이번 포스팅에서는 구성 후 받은 피드백과 오류 파티를 해결한 내용을 정리해보고자 합니다. X-Pack 문제 어느 순간부터 Logstash 를 기동할 때 아래와 같은 오류가 발생하고 데이터 Shipping이 불가능했습니다. [logstash.licensechecker.licensereader] Attempted to resurrect connection to dead ES instance, but got an error {:url=>”http://elasticsearch:9200/“, :exception=>LogStash::Outputs::ElasticSearch::HttpClient::Pool::HostUnreachableE..

    [찍어먹기] Spring Boot 부터 ELK Stack 까지 :: 데이터 수집해서 시각화 하기 (1)

    [찍어먹기] Spring Boot 부터 ELK Stack 까지 :: 데이터 수집해서 시각화 하기 (1)

    앞선 포스팅에서 반정형 로그 수집기 애플리케이션을 만들어보았습니다. 구현 내용을 다시 상기해보면, 해당 애플리케이션은 반정형 데이터 수집 요청을 받아 Writer 인터페이스를 구현하는 Writer들로 데이터를 저장하는 역할을 했습니다. 이번 포스팅에서는 FileWriter로 로컬 저장소에 저장된 데이터들을 ELK Stack(Elastic Stack)을 이용해 수집하고, 저장하고, 시각화해보도록 하겠습니다. docker compose 작성 GitHub - ParkIlHoon/data-collector: [개인 프로젝트] 찍먹용 데이터 수집 프로젝트 [개인 프로젝트] 찍먹용 데이터 수집 프로젝트. Contribute to ParkIlHoon/data-collector development by creatin..

    [Effective Java] 아이템 42 : 익명 클래스보다는 람다를 사용하라

    [Effective Java] 아이템 42 : 익명 클래스보다는 람다를 사용하라

    아이템 42 : 익명 클래스보다는 람다를 사용하라 익명 클래스 과거 자바에서는 함수 타입을 표현할 때 추상 메서드를 하나만 담은 인터페이스를 사용했습니다. 이런 인터페이스의 인스턴스를 함수 객체라고하여, 특정 함수나 동작을 나타내는 데 썼습니다. JDK 1.1 부터 함수 객체를 만드는 주요 수단은 익명 클래스가 되었습니다. Collections.sort(words, new Comparator() { public int compare(String s1, String s2) { return Integer.compare(s1.length(), s2.length()); } }); 위 코드는 문자열을 길이순으로 정리하는데, 정렬을 위한 비교 함수로 익명 클래스를 사용합니다. Comparator 인터페이스가 정렬을..

반응형