Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
bjendrick
Contributor III
Contributor III

Qlik Sense Operations Monitor (and Others) Not Reloading

About a month ago, our virtual server that houses Qlik encountered a low drive situation where it hit less that 10% available.  While I figured 25GB was still plenty, Qlik didn't like it, and it crashed on me.  We recovered the entire virtual machine from a backup, I cleared out TONS of old logs, and freed up over 80GB of space.  Ever since this event, several of my monitoring apps won't reload.  Most of their error logs are showing a version of this:

20200715T164146.440-0700 0557 SELECT * FROM "public"."view_audit_activity_audit_security"
20200715T164146.440-0700 0558 WHERE entry_timestamp >= '2020-04-15 00:00:00'
20200715T164147.171-0700 Error: Field 'entry_timestamp' not found

I figured since we were running on the November 2019 release, and I needed to perform an upgrade, things would resolve themselves when I went to February 2020.  I've done that this past Monday, and it's still having issues.

So here's my question:  I believe there are QVDs or other supporting data on the Qlik server that I can remove & the apps will rebuild the data sources that they need.  Based on that, can someone point me to links or information on what to remove?  I've done multiple searches, but feel like I can't find specifically what is necessary.

Thank you in advance, and I appreciate your efforts to guide me!

Apps Currently Failing:

  1. License Monitor
  2. Log Monitor
  3. Operations Monitor
  4. Reloads Monitor
  5. Sense System Performance Analyzer
  6. Sessions Monitor

Successful Apps:

  1. App Metadata Analyzer (newly installed)
  2. Connector Logs Analyzer
2 Replies
Levi_Turner
Employee
Employee

Hey @bjendrick ,

Since the field entry_timestamp comes from the QLogs database, which is a product of the Centralized Logging capabilities, then my guess of things it things is that somehow there exists a QLogs database but the underlying tables which ought to be there are no longer there. Most of those apps have effectively dual modes, they can log from files on disk or DB based logs. The default value for this is auto:

 

123.png

 

The question for you would be, do you intend to use Centralized Logging? Or is that functionality either irrelevant or only a nice to have?

For your current exception, I would do the following:

  1. Adjust every app to have db_v_file_override to 1. This means the apps will only parse logs on disk.
  2. Delete all QVDs and TXT files from C:\ProgramData\Qlik\Sense\Log. If using a multi-node environment, do this from the Central
  3. Explicitly change the password for the data connection QLogs to a bad value. QMC > Data Connections > QLogs > enter some known bad value for the password.

At this stage the apps will not load from the database and moreover cannot sense the credentials are bad.

Personally I view Centralized Logging as a nice to have rather than a have-to-have so would do step 1 for any environment. The physical logs on disk are the system of record and thus should be the sole source of usage data.

* This solution will not scope to the Sense System Performance Analyzer app. It depends on Centralized Logging for some unique data points which aren't otherwise available in the logs on disk.

If you do intend to have Centralized Logging enabled, then I would re-configure it like so:

  • "C:\Program Files\Qlik\Sense\Logging"\Qlik.Logging.Service.exe setup --hostname FQDNofTheDatabase --port 4432 --postgres_user postgres --postgres_pswd PostgresUserPassword --writer_pswd IntendedWritePassword --reader_pswd IntendedReaderPassword
    • Note: If your password for any of these accounts has special characters, you may need to wrap the password in double quotes. Example --postgres_pswd "p@$$\/\/0rd". Strictly speaking the special characters for Windows command line are <, >, |, &, and ^. But wrapping the passwords in double quotes will eliminate any confusion here.
    • Note: This was written assuming a default installation path. You may need to adjust the path from "C:\Program Files\Qlik\Sense\Logging"\ to your installation path.
    • For an exhaustive outline for the parameters which are possible, please refer to the online documentation for the Qlik Logging Service (https://help.qlik.com/en-US/sense-admin/Subsystems/DeployAdministerQSE/Content/Sense_DeployAdministe...).
  • Since you mentioned storage being a concern, you're likely to want to place guard rails on the storage used here like so:
    • "C:\Program Files\Qlik\Sense\Logging"\Qlik.Logging.Service.exe update --hostname localhost --port 4432 --postgres_user postgres --postgres_pswd PostgresUserPassword --writer_pswd IntendedWritePassword --reader_pswd IntendedReaderPassword --archive_age 7 --purge_age 30 --maximum_db_size_in_gb 5 --database_logging on

At this stage, a restart of services would get things to fully initialize. If going this route then ignore step 3 above / adjust step 3 to use the new reader password.

Cheers

bjendrick
Contributor III
Contributor III
Author

Wow... thank you!  I don't have time to tackle this tonight, but I'll jump into it first thing tomorrow morning, and based on what I read, that should do the trick.  Based on the Performance app, I might just remove that.  I can't honestly say that I've done anything with it ever (other than "oooh, look, a new app").  Thank you, thank you, thank you, and I'll report back!