Logs and Monitoring
OmniSci writes to system logs, including errors related to NVIDIA components and other issues. For RHEL/CentOS, see /var/log/messages; for Ubuntu, see /var/log/syslog.
OmniSci uses rotating logs with a symbolic link referencing the current OmniSci server instance. Logs rotate when the instance restarts. These logs are located in the mapd_log directory within the $MAPD_DATA/data directory.
You can also view the most comprehensive log using the following command line entry:
journalctl -e -u mapd_server
To follow the logs as you interact with the data, use the following syntax in a terminal window:
tail -f *.INFO
Log Entry Types
mapd_server.INFO
Provides verbose general logging regarding such topics as:
- User connections
- Queries by user and session ID with timings
- Execution time - time for the query to execute
- Total time - execution time plus time spent waiting to execute
- Data loading
I1229 22:58:43.816704 15766 MapDHandler.cpp:568] sql_execute :PqAzLUwHEP1z9C4ffsX6zOW5nxoDVXa0:query_str:select count(*) from cc_trans; I1229 22:58:43.817028 15766 Calcite.cpp:247] User mapd catalog mapd sql 'select count(*) from cc_trans;' I1229 22:58:43.820521 15766 Calcite.cpp:260] Time in Thrift 0 (ms), Time in Java Calcite server 3 (ms) I1229 22:58:43.882936 15766 MapDHandler.cpp:586] sql_execute-COMPLETED Total: 66 (ms), Execution: 65 (ms)
mapd_server.WARNING
Reports warning messages. For example:
W1229 09:13:50.888172 36427 RenderInterface.cpp:1155] The string "Other" does not have a valid id in the dictionary-encoded string column "card_class" (aliased by "color") for table cc_trans.
mapd_server.ERROR
- Reports non-fatal error messages. For example:
E1227 13:15:38.272478 18054 QueryRenderer.cpp:178] JSON parse error [userId: vdp73CcaJh9HOFS5PlKrualA2rcygP0Y, widgetId: 1] obj: {}: "width" is not defined.
mapd_server.FATAL
Reports `check failed` messages and a line number to identify where the error occurred. For example:
F1022 19:51:40.978567 14889 Execute.cpp:982] Check failed: cd->columnType.is_string() && cd->columnType.get_compression() == kENCODING_DICT
Browser-based live logging
Using Chrome’s Developer Tools, you can interact with data in Immerse to see
SQL and response times from OmniSci Core. The syntax is SQLlogging(true)
,
entered under the console tab inline, as shown below.
Once SQL Logging is turned on, you can interact with the dashboard, see the SQL generated and monitor the response timing involved.
Monitoring
Monitoring options include the following.- You can run
nvidia-smi
on each node to view each node's GPU saturation. - You can use
systemd
in non-Docker deployments. - You can make mapdql monitoring calls using Thrift.
Distributed Deployment Monitoring
You can use the mapdql\status
command for cluster monitoring in
distributed deployments. It returns the following information:
- Server Version Number
- Server Start Time
- Number of Leaves
- Name of Leaf
- Leaf Version Number
- Leaf Start Time
Detailed memory monitoring
\memory_summary
outputs a hybrid summary of CPU and GPU memory
allocation. OmniSci Server CPU Memory Summary shows the maximum amount of memory
available, what is in use, allocated and free. OmniSci allocates memory in 2 GB
fragments on both CPU and GPU. OmniSci Server GPU Memory Summary shows the same
memory summary at the individual card level. Note: OmniSci does not pre-allocate
all of the available GPU memory.
A cold start of the system could look like this:
MapD Server CPU Memory Summary: MAX USE ALLOCATED FREE 412566.56 MB 8.19 MB 4096.00 MB 4087.81 MB MapD Server GPU Memory Summary: [GPU] MAX USE ALLOCATED FREE [0] 10169.96 MB 0.00 MB 0.00 MB 0.00 MB [1] 10169.96 MB 0.00 MB 0.00 MB 0.00 MB [2] 10169.96 MB 0.00 MB 0.00 MB 0.00 MB [3] 10169.96 MB 0.00 MB 0.00 MB 0.00 MB
After warming up the data, the memory could look like this:
MapD Server CPU Memory Summary: MAX USE ALLOCATED FREE 412566.56 MB 7801.54 MB 8192.00 MB 390.46 MB MapD Server GPU Memory Summary: [GPU] MAX USE ALLOCATED FREE [0] 10169.96 MB 2356.00 MB 4096.00 MB 1740.00 MB [1] 10169.96 MB 2356.00 MB 4096.00 MB 1740.00 MB [2] 10169.96 MB 1995.01 MB 2048.00 MB 52.99 MB [3] 10169.96 MB 1196.33 MB 2048.00 MB 851.67 MB