1.0.6 • Published 2 years ago

sfdl v1.0.6

Weekly downloads
-
License
-
Repository
-
Last release
2 years ago

sfdl-gif-logo

sfdl

sfdl is a command line interface tool to download, format and extract information from Salesforce Apex Logs. In addition, the compare feature allows to validate key/value records between two Salesforce orgs

Releases

  • v1.x.x - This version is focused on troubleshooting analysis, requiring to extract Manage Package logs using Grant Salesforce Support login access where Users don't have credentials (username/password) for authentication. Workaround described bellow. - v.1.0.0: Download, format, transform and extract logs information

    	- ```v.1.0.4: Comparing org records feature (--compare) ```

Installation

  • Download and Install Node at: https://nodejs.org/
  • Validate your version Node using node -v
  • Install the sfdl using NPM npm install --global sfdl

Configuration

config.json contains the information required for authentication purpose.

{
  "authToken": "Bearer 00D2w00000FEDhn\u0021AQwAQDrHuK17Bs.Rh84C5iJHXgHbTC.LuRU381NpUY2t7XVdaTcKBtpxQFaTb3Mtjc76sDlkG649jGEuHZ7AN6OrX8WdFJdw",
  "instanceUrl": "{yourinstance}.my.salesforce.com",
  "compare": {
    "authToken": "Bearer 00D1y0000000Mf4\u0021AQgAQDYJ9hpisnkZvCIRJoxKv4.XPyxCQYz4OxUTVrRZu2s6DEqDuWraGyKbCtALOIE0FcMO1Pxkl9lqFKZZaoQAUpRCW4IJ",
    "instanceUrl": "https://{yourinstance}.my.salesforce.com",
    "queries": [
      {
        "vlocity_cmt__TriggerSetup__c": {
          "query": "SELECT Name, vlocity_cmt__isTriggerOn__c FROM vlocity_cmt__TriggerSetup__c ORDER BY Name",
          "nameFields": "Name",
          "valueFields": "vlocity_cmt__IsTriggerOn__c"
        }
      },
      {
        "vlocity_cmt__InterfaceImplementationDetail__c": {
          "query": "SELECT vlocity_cmt__InterfaceId__r.Name, vlocity_cmt__IsActive__c FROM vlocity_cmt__InterfaceImplementationDetail__c ORDER BY vlocity_cmt__InterfaceId__r.Name",
          "nameFields": "vlocity_cmt__InterfaceId__r.Name",
          "valueFields": "vlocity_cmt__IsActive__c"
        }
      }
    ]
  }
}

Notes:

  • If this file is not added, each time you execute sfdl the authToken and the instanceUrl will be asked as inputs
  • You can add as many query as objects you chan

Execution

Workaround to get the authToken

  • Create the config.json file in your troubleshooting folder using the information from cUrl request: createConfigFile

  • If you copy/paste the cUrl request in the config file as the image above, delete the cUrl request information and save the file with the proper JSON format

Run sfdl

  • Execute sfdl in your troubleshooting directory where you configured the config.json file

  • A new folder called ApexLogs will be created with all the existing logs in the org***

*** Check the options bellow to filter the logs to download using queryWhere

By default the information retrieved comes from SELECT Id FROM ApexLog

Additional Command Line Options

The options using --optionName are:

Option NameDescriptionExampleDefault value
methodHierarchy OR -mNests information between METHOD_ENTRY with its METHOD_EXIT as well as CODE_UNIT_STARTED and CODE_UNIT_FINISHEDsfdl --methodHierarchy OR sfdl --format
queryWhere OR -qAllows you to enter a SOQL statements after the FROM ApexLogWHERE Operation != '<empty'> ORDER BY LastModifiedDate DESC
folderName OR -nAllows you to enter the name of the folder where the logs will be savedNewLogs2022ApexLog
debug OR -dIt will turn on logs from the module
createDraftConfigIt will create config.json file{   "authToken":"",   "instanceUrl": ""}
clearFinest OR -cIt will remove all lines that contains HEAP_ALLOCATE and STATEMENT_EXECUTE
format OR -fIt will display 3 options:    1) One file: Extract all query lines,    2) One file: Clear out HEAP_ALLOCATE and STATEMENT_EXECUTE,    3) All files in a folder: Clear out HEAP_ALLOCATE and STATEMENT_EXECUTE
helpAdditional information related to sfdl cli app
version OR -vcurrent version sfdl installed in your system
compareIt will use all the information from config to query and compare orgs records looking for differences and creating a file with them if exist
1.0.6

2 years ago

1.0.5

2 years ago

1.0.4

2 years ago

1.0.3

2 years ago

1.0.2

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago