카카오워크 부서 및 임직원 정보를 로그프레소에 동기화하는 방법

먼저 카카오워크 앱과 실험실 앱을 설치합니다.

아래 3개 쿼리를 예약된 쿼리로 각각 설정하고, 순차적으로 수행하도록 합니다.

  1. 부서 정보 동기화
  2. 임직원 정보 동기화
  3. 부서장 정보 동기화

각 동기화 쿼리 명령어는 예상 결과를 먼저 확인하고 실제 실행할 수 있도록 run 옵션을 별도로 부여하게 되어있으므로, 예약된 쿼리를 설정하기 전에 동작을 먼저 확인하시기 바랍니다.

각 import 구문은 부서 및 임직원 동기화가 의도대로 동작하지 않았을 때 사후 원인 진단을 수행하기 위한 것이므로 권장되지만 필수는 아닙니다.

부서 정보 동기화

kakaowork-departments 
| fields dept_name, dept_code, parent_dept_code 
| sonar-sync-departments run=t
| import SYNC_DEPT_LOG

임직원 정보 동기화

kakaowork-users
| join dept_name [ kakaowork-departments | fields dept_name, dept_code ] 
| rename id as emp_key, name as emp_name, user as email, responsibility as emp_title 
| eval mobile = valueof(mobiles, 0), phone = valueof(tels, 0) 
| fields emp_key, emp_name, emp_title, dept_code, dept_name, email, phone, mobile 
| sonar-sync-employees run=t
| import SYNC_EMP_LOG

부서장 정보 동기화

kakaowork-departments 
| join dept_name [ kakaowork-departments | fields dept_name, dept_code ]  
| eval boss_key = string(valueof(leaders, 0)) | fields dept_code, boss_key
| sonar-sync-bosses run=t
| import SYNC_BOSS_LOG