UNPKG

hayd-caf

Version:

Haystacks D-CAF: Distinguished Cloud Automation Framework is a web/cloud/SaaS/mobile GUI automation plugin that leverages a suite of business rules and a factory pattern to auto-generate functions and strings for logging that are used to execute test acti

847 lines (259 loc) 13 kB
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>JSDoc: Module: loggers</title> <script src="scripts/prettify/prettify.js"> </script> <script src="scripts/prettify/lang-css.js"> </script> <!--[if lt IE 9]> <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script> <![endif]--> <link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css"> <link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css"> </head> <body> <div id="main"> <h1 class="page-title">Module: loggers</h1> <section> <header> </header> <article> <div class="container-overview"> <div class="description"><p>Contains all of the functions necessary for logging to the console, and logging to the system-specified log file. Some of the logic here is duplicated from the Haystacks repo, but kept super basic intentionally. Logging from the plugin will remain hard-coded, because the data isn't loaded, and by the time it is loaded its already useless to log. So uncomment the lines in the plugin code if you need to log from the plugin, and leave them commented out if you don't need to log. This is setup here so that the logs can be added to the application level log file, especially to include data, as the data can be too much and will easily overflow the console buffer.</p></div> <dl class="details"> <dt class="tag-author">Author:</dt> <dd class="tag-author"> <ul> <li>Seth Hollingsead</li> </ul> </dd> <dt class="tag-copyright">Copyright:</dt> <dd class="tag-copyright"><ul class="dummy"><li>Copyright © 2023-… by Seth Hollingsead. All rights reserved</li></ul></dd> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="executrix_loggers.js.html">executrix/loggers.js</a>, <a href="executrix_loggers.js.html#line1">line 1</a> </li></ul></dd> </dl> </div> <h3 class="subsection-title">Requires</h3> <ul> <li>module:plugin.constants</li> <li><a href="module-pluginData.html">module:pluginData</a></li> <li><a href="https://www.npmjs.com/package/@haystacks/constants">@haystacks/constants</a></li> <li><a href="https://www.npmjs.com/package/moment">moment</a></li> <li><a href="https://nodejs.dev/learn/the-nodejs-fs-module">fs</a></li> <li><a href="https://www.npmjs.com/package/path">path</a></li> </ul> <h3 class="subsection-title">Methods</h3> <h4 class="name" id="~appendMessageToFile"><span class="type-signature">(inner) </span>appendMessageToFile<span class="signature">(message)</span><span class="type-signature"> &rarr; {void}</span></h4> <div class="description"> <p>Opens a file and appends a message to the file, then closes the file.</p> </div> <h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>message</code></td> <td class="type"> <span class="param-type">string</span> </td> <td class="description last"><p>The message that should be appended to the log file.</p></td> </tr> </tbody> </table> <dl class="details"> <dt class="tag-author">Author:</dt> <dd class="tag-author"> <ul> <li>Seth Hollingsead</li> </ul> </dd> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="executrix_loggers.js.html">executrix/loggers.js</a>, <a href="executrix_loggers.js.html#line91">line 91</a> </li></ul></dd> </dl> <h5>Returns:</h5> <dl> <dt> Type </dt> <dd> <span class="param-type">void</span> </dd> </dl> <h4 class="name" id="~consoleLog"><span class="type-signature">(inner) </span>consoleLog<span class="signature">(classPath, message)</span><span class="type-signature"> &rarr; {void}</span></h4> <div class="description"> <p>Logs out to the console, and to the same current Haystacks-application log file.</p> </div> <h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>classPath</code></td> <td class="type"> <span class="param-type">string</span> </td> <td class="description last"><p>The class pass from which this console log function was called from.</p></td> </tr> <tr> <td class="name"><code>message</code></td> <td class="type"> <span class="param-type">string</span> </td> <td class="description last"><p>The message and/or data that should be logged to the console, and the log file.</p></td> </tr> </tbody> </table> <dl class="details"> <dt class="tag-author">Author:</dt> <dd class="tag-author"> <ul> <li>Seth Hollingsead</li> </ul> </dd> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="executrix_loggers.js.html">executrix/loggers.js</a>, <a href="executrix_loggers.js.html#line62">line 62</a> </li></ul></dd> </dl> <h5>Returns:</h5> <dl> <dt> Type </dt> <dd> <span class="param-type">void</span> </dd> </dl> <h4 class="name" id="~getLogFileNameAndPath"><span class="type-signature">(inner) </span>getLogFileNameAndPath<span class="signature">(haystacksConfigData)</span><span class="type-signature"> &rarr; {string}</span></h4> <div class="description"> <p>Determines, using the Haystacks configuration settings data passed as input to the plugin entry-point, what the log file name and path should be.</p> </div> <h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>haystacksConfigData</code></td> <td class="type"> <span class="param-type">object</span> </td> <td class="description last"><p>A JSON object that contains all of the configuration data including the log file name and path.</p></td> </tr> </tbody> </table> <dl class="details"> <dt class="tag-author">Author:</dt> <dd class="tag-author"> <ul> <li>Seth Hollingsead</li> </ul> </dd> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="executrix_loggers.js.html">executrix/loggers.js</a>, <a href="executrix_loggers.js.html#line37">line 37</a> </li></ul></dd> </dl> <h5>Returns:</h5> <div class="param-desc"> <p>The full path and file name for the log file.</p> </div> <dl> <dt> Type </dt> <dd> <span class="param-type">string</span> </dd> </dl> <h4 class="name" id="~getNowMoment"><span class="type-signature">(inner) </span>getNowMoment<span class="signature">(formatString)</span><span class="type-signature"> &rarr; {string}</span></h4> <div class="description"> <p>Returns a time stamp string formatted according to the input formatting string.</p> </div> <h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>formatString</code></td> <td class="type"> <span class="param-type">string</span> </td> <td class="description last"><p>The formatting string, that tells moment in what format to return the value for the day, month, year, hour, minute, second, and millisecond.</p></td> </tr> </tbody> </table> <dl class="details"> <dt class="tag-author">Author:</dt> <dd class="tag-author"> <ul> <li>Seth Hollingsead</li> </ul> </dd> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="executrix_loggers.js.html">executrix/loggers.js</a>, <a href="executrix_loggers.js.html#line127">line 127</a> </li></ul></dd> </dl> <h5>Returns:</h5> <div class="param-desc"> <p>A time stamp string that has been formatted according to the input format.</p> </div> <dl> <dt> Type </dt> <dd> <span class="param-type">string</span> </dd> </dl> </article> </section> </div> <nav> <h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-allPluginConstantsValidationMetadata.html">allPluginConstantsValidationMetadata</a></li><li><a href="module-chiefCommander.html">chiefCommander</a></li><li><a href="module-chiefConfiguration.html">chiefConfiguration</a></li><li><a href="module-chiefData.html">chiefData</a></li><li><a href="module-chiefRules.html">chiefRules</a></li><li><a href="module-chiefTheme.html">chiefTheme</a></li><li><a href="module-chiefWorkflow.html">chiefWorkflow</a></li><li><a href="module-commandBroker.html">commandBroker</a></li><li><a href="module-commandsLibrary.html">commandsLibrary</a></li><li><a href="module-dCafCommands.html">dCafCommands</a></li><li><a href="module-dataBroker.html">dataBroker</a></li><li><a href="module-loggers.html">loggers</a></li><li><a href="module-main.html">main</a></li><li><a href="module-pluginData.html">pluginData</a></li><li><a href="module-ruleBroker.html">ruleBroker</a></li><li><a href="module-rulesLibrary.html">rulesLibrary</a></li><li><a href="module-selectorConstruction.html">selectorConstruction</a></li><li><a href="module-warden.html">warden</a></li><li><a href="plugin.business.constants.module_validation.html">plugin.business.constants.validation</a></li><li><a href="plugin.business.module_constants.html">plugin.business.constants</a></li><li><a href="plugin.command.constants.module_validation.html">plugin.command.constants.validation</a></li><li><a href="plugin.command.module_constants.html">plugin.command.constants</a></li><li><a href="plugin.constants.module_validation.html">plugin.constants.validation</a></li><li><a href="plugin.message.constants.module_validation.html">plugin.message.constants.validation</a></li><li><a href="plugin.message.module_constants.html">plugin.message.constants</a></li><li><a href="plugin.module_constants.html">plugin.constants</a></li><li><a href="plugin.system.constants.module_validation.html">plugin.system.constants.validation</a></li><li><a href="plugin.system.module_constants.html">plugin.system.constants</a></li></ul> </nav> <br class="clear"> <footer> Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 4.0.2</a> on Fri Apr 28 2023 18:01:37 GMT-0500 (Central Daylight Time) </footer> <script> prettyPrint(); </script> <script src="scripts/linenumber.js"> </script> </body> </html>