google-sheets-logger
v1.0.1
Published
Logging service which saves the logs in your Google Sheets.
Downloads
5
Maintainers
Readme
Data Logging Service in Google Sheets (node.js)
A simple Node.js module for logging in Google Sheets.
Installation
Basic Usage
Create a Google Sheets File and give access to the Service Account as described in the Authentcation secion.
Add the following headers (case-sensitive) to your sheet:
- Log Id
- Log Message
- Log Time
Import the module and use as shown below.
var GoogleSheetLogger = require("google-sheets-logger");
var creds = require("./google-generated-creds.json");
// Spreadsheet key is the long id in the sheets URL
var Logger = new GoogleSheetLogger("<Spreadsheet Key>", creds);
Logger.log("1", "Sample Log Message", "2019-10-08 12:49:44");
// When Timestamp is not passed, it adds the current time as the Timestamp of the Log Message by default.
Logger.log("1", "Sample Log Message with no Timestamp");
// To add logs in sheets other than the first one of your workbook, pass the sheet index as the 4th argument.
// Index starts at 1.
Logger.log("1", "Sample Log Message", "2019-10-08 12:49:44", 3);
Authentication
IMPORTANT: Google recently deprecated their ClientLogin (username+password) access, so things are slightly more complicated now. Older versions of this module supported it, so just be aware that things changed.
Service Account (recommended method)
This is a 2-legged oauth method and designed to be "an account that belongs to your application instead of to an individual end user". Use this for an app that needs to access a set of documents that you have full access to. (read more)
Setup Instructions
- Go to the Google Developers Console
- Select your project or create a new one (and then select it)
- Enable the Drive API for your project
- In the sidebar on the left, expand APIs & auth > APIs
- Search for "drive"
- Click on "Drive API"
- click the blue "Enable API" button
- Create a service account for your project
- In the sidebar on the left, expand APIs & auth > Credentials
- Click blue "Add credentials" button
- Select the "Service account" option
- Select "Furnish a new private key" checkbox
- Select the "JSON" key type option
- Click blue "Create" button
- your JSON key file is generated and downloaded to your machine (it is the only copy!)
- note your service account's email address (also available in the JSON key file)
- Share the doc (or docs) with your service account using the email noted above
Further possibilities & to-do
- Enable logging on public sheets.
- Create Header automatically using the module.
Links
License
google-sheets-logger is published under the MIT license. For more information, see the accompanying LICENSE file.