잘못된 데이터는 제외하면서 정상 로그를 한 건씩 처리하고, 최종적으로 사용자별 총 이용 시간을 계산하세요.
조건
extract_logs(raw_logs)는 다음 조건을 만족해야 합니다.
- 로그를 , 기준으로 분리합니다.
- 항목의 개수가 3개가 아니면 해당 로그를 제외합니다.
- duration은 int로 변환합니다.
- 숫자로 변환할 수 없는 경우 해당 로그를 제외합니다.
- duration이 음수이면 해당 로그를 제외합니다.
- 잘못된 데이터 때문에 프로그램 전체가 종료되어서는 안 됩니다.
- 정상 데이터는 리스트에 모아서 반환하지 않고 yield를 사용하여 한 건씩 반환해야 합니다.
- 정상 로그는 (user_id, event_name, duration) 형태로 반환합니다.
summarize_logs(log_stream)은 정상 로그를 받아 사용자별로 다음 정보를 계산합니다.