https://github.com/arghyadeep-k/google-sheets-logger
A simple Node.js module for logging data in Google Sheets.
https://github.com/arghyadeep-k/google-sheets-logger
Last synced: 3 months ago
JSON representation
A simple Node.js module for logging data in Google Sheets.
- Host: GitHub
- URL: https://github.com/arghyadeep-k/google-sheets-logger
- Owner: arghyadeep-k
- License: mit
- Created: 2019-10-08T12:35:06.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2022-12-10T04:56:08.000Z (over 2 years ago)
- Last Synced: 2025-02-13T20:33:54.184Z (3 months ago)
- Language: JavaScript
- Homepage: https://www.npmjs.com/package/google-sheets-logger
- Size: 32.2 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
# Data Logging Service in Google Sheets (Node.js)

[](https://sonarcloud.io/dashboard?id=arghyadeep-k_google-sheets-logger)
[](https://badge.fury.io/js/google-sheets-logger)





A simple Node.js module for logging in Google Sheets.
## Installation
[](https://nodei.co/npm/google-sheets-logger/)
**Install from command line:**
`npm install --save google-sheets-logger`
Or
**Install via package.json:**
Add the following to your *package.json* file under dependencies
`"google-sheets-logger": "1.0.2"`
## 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.
```javascript
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("", 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](https://developers.google.com/identity/protocols/OAuth2ServiceAccount))**Setup Instructions**
1. Go to the [Google Developers Console](https://console.developers.google.com/project)
2. Select your project or create a new one (and then select it)
3. 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" button4. 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)5. 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.
---
### PS:
If you find this package useful, please [star](https://github.com/arghyadeep-k/google-sheets-logger) the project on Github.And, if you are willing to [buy me a coffee](https://ko-fi.com/arghyadeep), that would be awesome. :)