Salesforce open source library with logging framework, trigger framework, feature switches, and advanced monitoring capabilities
The goal of this library is to help developers to create clean, production-ready code with a high level of operational supportability.
This library is inspired by Dan Appleman's (see Advanced Apex Programming) logging design pattern to collect better diagnostic information when dealing with errors in your Apex classes. This library expands his concepts to provide detailed log information from Lightning Components and Lightning Web Components, giving developers more visibility into the execution path on the client side, especially when dealing with production issues. The library can be configured to automatically report any unexpected errors through Salesforce's latest technologies such as Platform Events.
The following lists describe some of the key features of rflib.
The best way to add RFLIB to your environment is by installing the unlocked package.
Alternatively, you can either clone the repository and use 'sfdx force:source:deploy' to deploy this library to your Sandbox or use the Deploy to Salesforce button below to deploy it directly into your org.
Please check the CHANGELOG file for versions, install links and package aliases.
To install package via browser:
https://login.salesforce.com/packaging/installPackage.apexp?p0=<PACKAGE_VERSION_ID>
To install package via SFDX CLI Plugin (v2):
sf package install --package <Package ID> --target-org <your org alias>
Using the legacy CLI command:
sfdx force:package:install -p <Package ID> -w 10 -s AdminsOnly -u <your org alias>
To deploy code:
To install the logger in a Salesforce Function using NodeJS:
npm install --save rflib
See the NPM Package Registry record for more details.
Documentation such as "How To's" and more can be found in the Wiki of this repository.
Review any log events sent within the last 72 hours or receive new log events in real-time. The dashboard shows all the events and lets you filter them by searching text within the messages. This will make it easy to detect error codes or other log messages of value.
To enabled the Ops Center application, simply assign the Ops Center Access
Permission Set to the users of your choice.
Review object and field permissions for profiles and permission Sets easily within the same user interface. Many problems encountered in an org trace back to access issues. Using the Setup interface to review access for users is pretty inefficient. This dashboard provides access to all profiles and permissions and allows for quick filtering of the results.
To enabled the Ops Center application, simply assign the Ops Center Access
Permission Set to the users of your choice.
A critical aspect of operating a Salesforce Org is managing Governor Limits. There are transactional and org-wide limits, some of which RFLIB is consuming
in order to report and display Log Events. While there are several different tools available to monitor org-wide Governor Limits, RFLIB provides a simple
way to stay on top of those as well through the Management Console
tab.
There, users with access to the Ops Center can view the current consumption of the org-wide Governor Limits relevant to RFLIB. In addition, RFLIB will display what users have not been provided with Permission Set to enable client logging and what users are assigned access to the Ops Center.
Whether a product owner wants to understand feature adoption or user behaviour, Application Events provide visibility into the an application's usage patterns and can help teams to make better decisions and learn more about their apps.
For operational teams, Application Events can be used to track integration requests and their outcomes, which can lead to a call to action to review RFLIB log messages for more details.
See CHANGELOG file for versions, install links and package IDs.