Configuring EC2 for Redis

Ubuntu 18.04 out of the box from AWS is not setup properly to support Redis. Enable Overcommit Memory login via SSH sudo vim /etc/sysctl.conf Add the following to the end of the file and save. # VM for Redisvm.overcommit_memory=1 Reboot the server. Disable Huge Pages From: login via SSH sudo vim /etc/systemd/system/disable-thp.service Add this […]

July 11th 2022 10:12AM EST Downtime Analysis & Remediation

aerial photo of vehicles in the city

Cause Live BE server stopped responding. Actions RDS server was still responding, but showing 20 open connections. EC2 server was not responding, SSH unresponsive, Jenkins (http) unresponsive. AWS reboot of the EC2 instance never finished (5m).AWS stop instance never finished (5m).AWS force stop took 3m+, eventually stopped.Instance manually restarted via AWS console. Forced PM2 restart […]

API Performance Deep Dive

focused biologist studying plant leaf with microscope

Knex Digging deeper into the Knex queries can be done with the knex configuration option debug set to true. Enabling Debug Output for Knex On the OB API server you can turn debugging output from Knex by updating the knexInstance definition as follows: In the BE file: .env Add a line like this… # Knex/Objection […]

OmniBlocks® Release Notes v1.73

silver and black coffee cups

Dashboard Inventory Received Inventory Report The received inventory report has a new view option to get a quick on-screen preview of the downloadable CSV file. Sales Orders List of Orders The product SKU in the products column is now linked to the inventory page with a filter action that will show only the selected SKU. […]

API Documentation

The API documentation is generated with a jsDoc tool whenever the develop server is updated. The document generation command is built into the API’s package.json as a command. This command it run via the Jenkins configuration script on the Develop Backend Server whenever it detects code changes on the develop branch of the API codebase. […]

Data Structure: Tables

A partial list of OmniBlocks® API tables and their role. brand List of brands with a link to the brand’s primary website. brand_tenant_map Joiner table that links brands to tenants. Allows a brand to potentially be associated with more than one tenant. custom_templates The form builder templates (forms) used to set the steps for MMRs […]

Data Structure: Custom Templates

The custom_templates table stores the templates for the Form Builder module. Fields Name Stores the name of the template. Section A large array of JSON objects that holds the sections used to build the template. It stores an actual copy of the section as it was configured when the template was created. The original source […]

OmniBlocks® Release Notes v1.66

Certification Marks The main certification mark listing table has a couple of updates. You can now filter the marks to only show those that have at least one completed batch. The SKU column now links to the Inventory page and pre-filters the inventory to show the matching SKU. API Support For TruInsights® Quality Checks The […]