Class Logger

Logger

이 클래스를 사용하면 개발자가 스크립트가 표준 Cloud 프로젝트와 연결된 경우 실행 로그 및 Google Cloud Logging에 쓸 수 있습니다. 이 클래스는 Cloud Logging에서 구조화된 로깅 및 jsonPayload 지원에 권장됩니다. 시간 기반 로깅의 경우 console를 사용합니다.

메서드

메서드반환 유형간략한 설명
clear()void로그를 지웁니다.
getLog()String현재 로그의 전체 메시지 목록을 반환합니다.
log(data)Logger데이터를 로그에 씁니다.
log(format, values)Logger제공된 형식과 값을 사용하여 로깅 콘솔에 형식이 지정된 문자열을 씁니다.

자세한 문서

clear()

로그를 지웁니다.


getLog()

현재 로그의 전체 메시지 목록을 반환합니다. 이 메서드는 스크립트 실행 중에 생성된 전체 로그 출력을 저장하거나 이메일로 보낼 때 사용할 수 있습니다.

// Generate a log, then email it to the person who ran the script.
const files = DriveApp.getFiles();
while (files.hasNext()) {
  Logger.log(files.next().getName());
}
const recipient = Session.getActiveUser().getEmail();
const subject = 'A list of files in your Google Drive';
const body = Logger.getLog();
MailApp.sendEmail(recipient, subject, body);

리턴

String: Logging 콘솔의 로그


log(data)

데이터를 로그에 씁니다. 데이터는 문자열, JavaScript 객체 또는 message 속성이 있는 객체일 수 있습니다.

Logger.log("my log message");
// Info   my logmessage
Logger.log({ key: "value" });
// Info   {key=value}
Logger.log({ message: "my log message", data: { key: "value" } })
// Info   my logmessage

객체를 전달할 때 객체에 message 속성이 포함되어 있으면 이 속성이 로그 메시지로 사용됩니다. 그렇지 않으면 toString() 메서드가 호출되어 객체를 문자열로 변환합니다. JSON 직렬화가 가능한 다른 모든 속성은 아래 예와 같이 LogEntryjsonPayload에 포함됩니다.

{
  "insertId": "w5eib...",
  "jsonPayload": {
    "message": "my log message",
    "serviceContext": {
      "service": "AKfyc..."
    },
    "data": {
      "key": "value"
    }
  },
  "resource": {
    "type": "app_script_function",
    "labels": {
      "invocation_type": "editor",
      "function_name": "unknown",
      "project_id": "1234567890"
    }
  },
  "timestamp": "2024-11-15T23:28:19.448591Z",
  "severity": "INFO",
  "labels": {
    "script.googleapis.com/user_key": "AOX2d...",
    "script.googleapis.com/process_id": "EAEA1...",
    "script.googleapis.com/project_key": "MQXvl...",
    "script.googleapis.com/deployment_id": "AKfyc..."
  },
  "logName": "projects/[PROJECT_ID]/logs/script.googleapis.com%2Fconsole_logs",
  "receiveTimestamp": "2024-11-15T23:28:20.363790313Z"
}

매개변수

이름유형설명
dataObject로깅할 객체

리턴

Logger: 체이닝을 위한 로거입니다.


log(format, values)

제공된 형식과 값을 사용하여 로깅 콘솔에 형식이 지정된 문자열을 씁니다. 문자열에는 여러 개의 %s 자리표시자가 포함될 수 있으며, 이는 문자열로 변환된 인수 목록의 해당 값으로 대체됩니다.

// Log the number of Google Groups you belong to.
const groups = GroupsApp.getGroups();
Logger.log('You are a member of %s Google Groups.', groups.length);

매개변수

이름유형설명
formatStringvalues 인수의 수만큼 %s 인스턴스가 포함된 형식 문자열
valuesObject...형식 문자열에 삽입할 값의 개수(가변)

리턴

Logger: 연결을 위한 로거