* Added logging to n8n
This commit adds logging to n8n using the Winston library.
For now, this commit only allows logging to console (default behavior)
or file (need to pass in config via environment variables).
Other logging methods can be further implemented using hooks. These were
skipped for now as it would require adding more dependencies.
Logging level is notice by default, meaning no additional messages would
be displayed at the moment. Logging level can be set to info or debug as
well to enrich the generated logs.
The ILogger interface was added to the workflow project as it would make
it available for all other projects but the implementation was done on
the cli project.
* Lint fixes and logging level naming. Also fixed the way we use the logger as it was not working previously
* Improvements to logging framework
Using appropriate single quotes
Improving the way the logger is declared
* Improved naming for Log Types
* Removed logger global variable, replacing it by a proxy
* Add logging to CLI commands
* Remove unused GenericHelpers
* Changed back some messages to console instead of logger and added npm
shortcuts for worker and webhook
* Fix typos
* Adding basic file rotation to logs as suggested by @mutdmour
* Fixed linting issues
* Correcting comment to correctly reflect space usage
* Added settings for log files rotation
* Correcting config type from String to Number
* Changed default file settings to number
To reflect previous changes to the type
* Changed the way log messages are added to be called statically. Also minor naming improvements
* Applying latest corrections sent by @ivov
* ⚡ Some logging improvements
* Saving logs to a folder inside n8n home instead of root
* Fixed broken tests and linting
* Changed some log messages to improve formatting
* Adding quotes to names on log messages
* Added execution and session IDs to logs. Also removed unnecessary line breaks
* ⚡ Added file caller to log messages (#1657)
This is done using callsites library which already existed
in the project as another library's dependency. So in fact
it does not add any new dependency.
* Adding logs to help debug Salesforce node
* ⚡ Add function name to logs and add more logs
* ⚡ Improve some error messages
* ⚡ Improve some more log messages
* ⚡ Rename logging env variables to match others
Co-authored-by: dali <servfrdali@yahoo.fr>
Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
* Adding support to ParameterizedQuery on Postgres Node
* Created another parameter to toggle on replacement so it's clear to users what is happening.
* Fixed lint issues
* ⚡ Formatting
* Improvements to questDB node so it is more consistent
* Fixed lint issues
* Fixed typing issue
* ⚡ Apply suggestions BHesseldieck
Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com>
* Standardized output for postgres and postgres-like nodes
This changes the behavior of CrateDB, Postgres, QuestDB and TimescaleDB
nodes.
The Execute Query operation used to execute multiple queries but return
the result from only one of the queries.
This change causes the node output to containt results from all queries
that ran, making the behavior more consistent across all n8n.
* Fixing lint issues
* ⚡ Minor improvements
* ⚡ Fix breaking changes files
Co-authored-by: Gustavo Arjones <gustavo.arjones@ank.app>
Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
Co-authored-by: Jan <janober@users.noreply.github.com>
Co-authored-by: Ben Hesseldieck <1849459+BHesseldieck@users.noreply.github.com>
* add multi return
* add independently and transaction to query
* pgInsert normal and transaction
* independently for pgInsert
* normal, transaction and independently for pgUpdate
* cleanup
* implement it in other nodes
* multiple fixes
* add optional returning support
* clean up Postgres functions
* fix other postgres based dbs
* Added option to run queries as a transaction to Postgres
This commit allows users to configure Postgres, CrateDB, TimescaleDB and
QuestDB to run queries independently or as transactions as well as the
previous mode which is to execute multiple queries at once.
Previous behavior remains untouched so we only added new options.
* Standardize behavior across nodes that use postgres protocol
Also fixed unit tests.
* Added breaking change notice
* Added more information to breaking changes
* ⚡ Styling fixes
Co-authored-by: lublak <lublak.de@gmail.com>
Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
* Added a global timeout setting for all http requests except for http
node.
The http node explicitly sets a timeout that overrides the default
value.
This is to prevent behaviors when users were expecting that their quests
could take a very long time to execute.
* Removed unnecessary typing from code
* ⚡ DateTime node improvements
* 🔨 Fix parsing format in date calculation
* ⚡ Small improvements
* ✏️ Rename params and add tooltips
* 🔨 Reorder params
* ⚡ Set default values
* ⚡ Set defaults and use same parameter name
Co-authored-by: ricardo <ricardoespinoza105@gmail.com>
Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>