본문 바로가기

Application

ICT이노베이션스퀘어 - [데이터 엔지니어링 7주차] Kafdrop 활용 - 거래내역 이상탐지

카프카를 사용해서 카드 거래내역에 대한 이상 거래 탐지 프로그램을 만들어보자.

대략 이런 구조..topic이 1개이면 안될 것이지요

 

나중에 github에 commit해보쟈...

 

참고로 

- payment_producer.py : 로그 데이터 생성용

- fraud_detector.py : 프로듀서 역할. 조건 설정 후, 이상이 있으면 이후에 fraud_processor.py로 데이터 전송 / 이상 없으면 legit_process.py로 데이터 전송

- legit_process.py : 정상 거래 데이터 받아오는 consumer

- fraud_processor.py : 이상 거래 데이터 받아오는 consummer

--> 즉, 프로듀서 1개, 컨슈머 2개, 로그 생성용 파일 1개

 

로그 데이터 생성(payment_producer.py 실행)

 

로그데이터 생성 & 이상 탐지 py 파일 저장

터미널에서 실행한 예시

왼쪽이 데이터 생성 / 오른쪽이 생성한 데이터에 대한 이상 여부 판단

데이터 Kafdrop에도 쌓이는 것 확인 가능

fraud_payment 토픽과 legit_payment 토픽

 

아래는 fraud_payment의 데이터

 

legit_processor & fraud_processor (컨슈머 2개)

아래 그림과 같이 흘러 갈 컨슈머 만들어줄거임.

 

실제로 수행된 화면은 아래와 같다.

 

슬랙에 이상 거래 감지될 경우 메시지 보내는 기능도 추가할 수 있다고 함!

fraud_processor 에 pip install requests 를 해준다.

나머지는 계속 돌아가고 있음. 이상치 consumer 파트만 일단 정지해두고 requests 깔기

 

슬랙에 관리자 페이지로 들어가면 webhook? 기능같은게 있다는데, 다음과 같이 post가 가능한 것 같다.

 

저장한 뒤에 다시 파워쉘 들어가서 py 파일 실행하면 다음과 같이 슬랙에 알람이 간다.