It's vital to know the touch points when building SAS Powered HTML5 Web Apps - be it for debugging, usage profiling, or performance optimisation.
Logging on the frontend can be done with
console.log() statements, or by writing to cookies / local storage. The SASjs adapter will even cache the backend SAS session logs and work tables locally (if debug is enabled).
When a request is made to SAS, there are logs made when hitting the Web Server, SASLogon, the Object Spawner, and the Stored Process Server (SAS9). The locations of these logs are configurable - see: http://bit.ly/webloglocs
When your SAS code is actually running, you can control the log using proc printto (location will be stored in SYSPRINTTOLOG), and by using classic logging options such as MPRINT / SGEN. When sending these logs back as part of a SAS request (
_debug enabled), you will need to parse out the data from the response using JS - again, something that comes prebuilt in the adapter.
For more info on building web apps with SAS, check out https://sasjs.io