Class Logger
Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
Logger
Questa classe consente allo sviluppatore di scrivere nel log di esecuzione e in Google Cloud Logging se lo script è associato a un progetto Cloud standard. Questo tipo di log è preferito per i log strutturati e l'jsonPayload
supporto in Cloud Logging. Per il logging basato sul tempo, utilizza console
.
Metodi
Metodo | Tipo restituito | Breve descrizione |
clear() | void | Cancella il log. |
getLog() | String | Restituisce un elenco completo dei messaggi nel log corrente. |
log(data) | Logger | Scrive i dati nel log. |
log(format, values) | Logger | Scrive una stringa formattata nella console di log, utilizzando il formato e i valori forniti. |
Documentazione dettagliata
getLog()
Restituisce un elenco completo dei messaggi nel log corrente. Questo metodo può essere utilizzato per salvare o inviare per email l'intero output del log generato durante l'esecuzione dello script.
// 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);
Invio
String
: il log della console di logging
log(data)
Scrive i dati nel log. I dati possono essere una stringa, un oggetto JavaScript o un oggetto con una proprietà 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
Quando passi un oggetto, se l'oggetto contiene una proprietà message
, questa viene utilizzata come messaggio di log. In caso contrario, viene chiamato il metodo toString()
per convertire l'oggetto in una stringa. Tutte le altre proprietà serializzabili in JSON sono incluse nel jsonPayload
in LogEntry
, in modo simile all'esempio seguente:
{
"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"
}
Parametri
Nome | Tipo | Descrizione |
data | Object | l'oggetto da registrare |
Invio
Logger
: il logger per l'accodamento.
Scrive una stringa formattata nella console di log, utilizzando il formato e i valori forniti. La
stringa può includere più segnaposto %s
, che vengono sostituiti con i valori corrispondente
dell'elenco di argomenti, convertiti in stringhe.
// 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);
Parametri
Nome | Tipo | Descrizione |
format | String | una stringa di formato contenente il numero di istanze di %s uguale al numero di argomenti
values |
values | Object... | un numero variabile di valori da inserire nella stringa di formato |
Invio
Logger
: il logger per l'accodamento
Salvo quando diversamente specificato, i contenuti di questa pagina sono concessi in base alla licenza Creative Commons Attribution 4.0, mentre gli esempi di codice sono concessi in base alla licenza Apache 2.0. Per ulteriori dettagli, consulta le norme del sito di Google Developers. Java è un marchio registrato di Oracle e/o delle sue consociate.
Ultimo aggiornamento 2025-07-26 UTC.
[null,null,["Ultimo aggiornamento 2025-07-26 UTC."],[[["\u003cp\u003eThe \u003ccode\u003eLogger\u003c/code\u003e class enables developers to write text to debugging logs for script analysis and troubleshooting.\u003c/p\u003e\n"],["\u003cp\u003eIt provides methods to clear the log, retrieve the entire log as a string, and write formatted or unformatted messages to the log.\u003c/p\u003e\n"],["\u003cp\u003eLogged output can be viewed within the Apps Script editor using "View > Show logs" and utilized for debugging purposes.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003egetLog()\u003c/code\u003e method allows for capturing the log content, which can then be used for saving, emailing, or further processing.\u003c/p\u003e\n"],["\u003cp\u003eDevelopers can leverage format strings and values to create structured log messages using the \u003ccode\u003elog(format, values)\u003c/code\u003e method.\u003c/p\u003e\n"]]],[],null,["# Class Logger\n\nLogger\n\nThis class allows the developer to write to the Execution log and to [Google Cloud Logging](https://cloud.google.com/logging) if the script is associated with\na [standard\nCloud Project](https://developers.google.com/apps-script/guides/cloud-platform-projects#standard). This class is preferred for structured logging and `json``Payload` support\nin Cloud Logging. For time-based logging, use [console](/apps-script/reference/base/console). \n\n### Methods\n\n| Method | Return type | Brief description |\n|-----------------------------------------------|-------------|-----------------------------------------------------------------------------------------|\n| [clear()](#clear()) | `void` | Clears the log. |\n| [getLog()](#getLog()) | `String` | Returns a complete list of messages in the current log. |\n| [log(data)](#log(Object)) | [Logger](#) | Writes the data to the log. |\n| [log(format, values)](#log(String,Object...)) | [Logger](#) | Writes a formatted string to the logging console, using the format and values provided. |\n\nDetailed documentation\n----------------------\n\n### `clear()`\n\nClears the log.\n\n*** ** * ** ***\n\n### `get``Log()`\n\nReturns a complete list of messages in the current log. This method can be used to save or\nemail the entire log output generated during script execution.\n\n```javascript\n// Generate a log, then email it to the person who ran the script.\nconst files = DriveApp.getFiles();\nwhile (files.hasNext()) {\n Logger.log(files.next().getName());\n}\nconst recipient = Session.getActiveUser().getEmail();\nconst subject = 'A list of files in your Google Drive';\nconst body = Logger.getLog();\nMailApp.sendEmail(recipient, subject, body);\n```\n\n#### Return\n\n\n`String` --- the log from the logging console\n\n*** ** * ** ***\n\n### `log(data)`\n\nWrites the data to the log. The data can be a string, a JavaScript object, or an object with a\n`message` property.\n\n```javascript\nLogger.log(\"my log message\");\n// Info my logmessage\nLogger.log({ key: \"value\" });\n// Info {key=value}\nLogger.log({ message: \"my log message\", data: { key: \"value\" } })\n// Info my logmessage\n```\n\nWhen passing an object, if the object contains a `message` property, that property is\nused as the log message. Otherwise, the `to``String()` method is called to convert the\nobject to a string. All other properties which are JSON serializable are included as part of\nthe `json``Payload` in the [`Log``Entry`](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry), similar to the example below:\n\n```transact-sql\n{\n \"insertId\": \"w5eib...\",\n \"jsonPayload\": {\n \"message\": \"my log message\",\n \"serviceContext\": {\n \"service\": \"AKfyc...\"\n },\n \"data\": {\n \"key\": \"value\"\n }\n },\n \"resource\": {\n \"type\": \"app_script_function\",\n \"labels\": {\n \"invocation_type\": \"editor\",\n \"function_name\": \"unknown\",\n \"project_id\": \"1234567890\"\n }\n },\n \"timestamp\": \"2024-11-15T23:28:19.448591Z\",\n \"severity\": \"INFO\",\n \"labels\": {\n \"script.googleapis.com/user_key\": \"AOX2d...\",\n \"script.googleapis.com/process_id\": \"EAEA1...\",\n \"script.googleapis.com/project_key\": \"MQXvl...\",\n \"script.googleapis.com/deployment_id\": \"AKfyc...\"\n },\n \"logName\": \"projects/[PROJECT_ID]/logs/script.googleapis.com%2Fconsole_logs\",\n \"receiveTimestamp\": \"2024-11-15T23:28:20.363790313Z\"\n}\n```\n\n#### Parameters\n\n| Name | Type | Description |\n|--------|----------|-------------------|\n| `data` | `Object` | the object to log |\n\n#### Return\n\n\n[Logger](#) --- the Logger, for chaining.\n\n*** ** * ** ***\n\n### `log(format, values)`\n\nWrites a formatted string to the logging console, using the format and values provided. The\nstring can include multiple `%s` placeholders, which are replaced with corresponding\nvalues from the list of arguments, converted to strings.\n\n```javascript\n// Log the number of Google Groups you belong to.\nconst groups = GroupsApp.getGroups();\nLogger.log('You are a member of %s Google Groups.', groups.length);\n```\n\n#### Parameters\n\n| Name | Type | Description |\n|----------|-------------|---------------------------------------------------------------------------------------------|\n| `format` | `String` | a format string that contains as many instances of `%s` as the number of `values` arguments |\n| `values` | `Object...` | a variable number of values to insert into the format string |\n\n#### Return\n\n\n[Logger](#) --- the Logger, for chaining"]]