add logging architecture