Install QS Document Analyzer on Server

Some people wish to run QS Document Analyzer (QSDA) on the Qlik Sense Enterprise server rather than Qlik Sense Desktop.  While the current installer only supports desktop, you can manually install to the server.

QSDA installs three components; a connector, an application (qvf) and an extension.

Install the latest QSDA on a desktop machine to unpack the components.  You don’t even need QS Desktop installed.  Take note of the folders where the components were installed.

Using the QMC,  upload the qvf application to the server.  Zip up the qsda-ribbon extension folder and upload as an extension through the QMC.

Copy the QsAppMetadataConnector folder from the install folder to this folder on the server:

C:\Program Files\Common Files\Qlik\Custom Data

If you are running a multi-node cluster, the connector must be installed on the central and rim nodes.

That’s it!

 

Share

99 thoughts on “Install QS Document Analyzer on Server”

  1. Thanks for the detailed explanation, Rob. I’ll add two points to hopefully save people from a few potential roadblocks:

    – The destination directory (C:\Program Files\Common Files\Qlik\Custom Data) should be the regular Program Files folder, *not* Program Files (x86)
    – If you have set alternate connector root folders in the QMC service cluster settings, that does not affect these instructions. As far as I can tell, those settings are getting ignored: https://help.qlik.com/en-US/sense/April2019/Subsystems/ManagementConsole/Content/Sense_QMC/service-cluster.htm

  2. Thanks Rob and Michael. I now having a working Document Analyzer on server. Solution was as suggested to copy the install folder to the noted path on C: on EVERY node in the cluster. It is a bit annoying that Sense is ignoring the QMC folder settings ! For a large app I also amended the config timeout to over 10 minutes.

  3. This is helpful thanks. I followed these steps and, within the data load editor, in my list of data connections on the right, I still see a message “Unknown connection type: QsAppMetadataConnector.exe”

    I’ve got the QsAppMetadataConnector in all the right places.
    Any ideas?

  4. Hi Rob, I am having the same issue “Unknown connection type: QsAppMetadataConnector.exe”

    I installed the QsAppMetadataConnector to the central and the web nodes at

    C:\Program Files\Common Files\Qlik\Custom Data

  5. Looks like there is a hierarchy of custom data folder which it looks into. I renamed the Custom Data folder under Qlik Tech at below location and then the connector is appearing. We do not use Qlikview so now issue is resolved.

    C:\Program Files\Common Files\Qlik Tech\Custom Data

  6. For connecting to server do we need to change it to Enterprise and put the server URL? Sorry it might be a basic question but I still don’t seem to be able to get it working on server. I copied the connector and imported the qvf. Any suggestions?

    1. If you want to analyze an application that lives on the server, then you must select “Enterprise” and put in the server URL, regardless of where DA is installed.

  7. Selected Enterprise and put the server details as below
    https://qlik-s.xxx.com

    Getting error “Cannot connect to Qlik Sense. No such host is known”

    I have installed DA on server, opening the QVF from hub and trying to edit the appmetadata connection

  8. Thanks Rob. I removed the https and now it gives error message
    The remote server returned an error:(401) Unauthorized

    1. The connector supports only Windows authentication. Is your virtual proxy configured for Windows auth?

  9. Hi Rob, yes our Virtual Proxy is configured for Windows auth. From envt perspective, we have 1 central node and 2 web nodes in case that make any difference.

  10. Hi Rob,
    I get an error also while editing the appmeta connection to fetch the app list.
    GeneralCommunicationException with communication error WebsocketConnectionNotAccepted and http error code 500.

    The connector uses the default virtual proxy right?

      1. no Luck Rob.
        I have in the QMC->Central proxy(default)->Authentication->No anonymous user, ticket and Windows.

        Are there any settings in QMC I need to check to make the connector work?

        1. No special QMC settings required. You might find a useful message in the proxy log on the server.

    1. I suggest looking at any messages logged at the time of your failure. There might be something that provides some explanation for your problem.

  11. I Rob,can you help me? I’ve same problems descrived over.
    Appmeta : unknown connection type
    During the Reload app,i’ve the error: LIB CONNECT TO ‘appmeta’
    Error: Connector connect error: Invalid custom connector –
    Used QVConnect: C:\Program Files\Qlik\Sense\Engine\QvConnect64.EXE
    any ideas?
    thanks in advance
    Frank

    1. Frank, my question is: When you open the script editor in QS Document Analyzer, can you edit the appmeta connection and select an app?

  12. Hi Frank,yes,i can edit the appmeta connection,i can select an app and save changes. Then,when i try to reload data,i receive the error: “connection appmeta non found”
    if it’s possible,i can send you the error screenshot.
    Wait for your reply,thanks!

    1. Hi Rob,yes,i can edit the appmeta connection,i can select an app and save changes. Then,when i try to reload data,i receive the error: “connection appmeta non found”
      if it’s possible,i can send you the error screenshot.
      Wait for your reply,thanks!

      1. I’m guessing the connection name is different in your app when you imported it — something like appmeta (uid). Check the connection name and either rename it or change the connect script statement to match. If that doesn’t fix it you can send screenshots to support@qlikviewcookbook.com

  13. Hi Rob! I’m trying to add the App to Enterprise. Having two nodes. turning off the secondary node and adding connection, app and extension to the primary node.
    Trying to enter the connection gives me LicenceAccessDenied[fatal]: NoAvailableAccessType.
    Is the problem in the second node? Or should I dig somewhere else?
    Regards!

    1. I’m not sure. The enterprise connection uses Windows auth to connect. Can you open that same url in a browser?

      1. Yes, I can open it. For more, when I open “choose data” with this connection, it works. But when I’m trying to change connection properties – getting that error in the connection property window

        1. My guess is that there is something in the license allocation rule that won’t match how DA connects. Can you examine your license rules?

          1. Hi Rob! Found the solution. The problem was that my system user had no licence to qliksense. Untill now it was used for app reload and system Rest connections.
            But when the deal came to appmetadata connector, it definitely needs license.

  14. Hi Rob,

    Thanks for developing the Document Analyzer.

    The app and connector are working on Enterprise, when I type the server name or ‘localhost’ in the server field. The only query I have is regarding the list of apps, Which is the criteria to populate the list (is this configurable)? I’m missing apps located in my ‘Work’ and other streams, although I see the ones in the ‘Everyone’ stream.

    Thanks!
    Fed

    1. There is no configuration. I’ll do some testing to investigate the Work stream issue. It worked for me last time I tried it.

  15. I Rob,can you help me? I’ve same problems descrived over.
    Appmeta : unknown connection type
    During the Reload app,i’ve the error: LIB CONNECT TO ‘appmeta’
    Error: Connector connect error: Invalid custom connector –
    Used QVConnect: C:\Program Files\Qlik\Sense\Engine\QvConnect64.EXE

    The same is frank at the top BUT i cant edit the connection. Only delete bin there?

  16. Finally I was able to get it to run on server. Thanks Rob!!! this is very good. Question and suggestion for future release
    1. Does this assess Community sheets and Unapproved/Unpublished sheets as well?
    2. If the App Metadata Connector can select multiple apps then it can be one of published apps running regularly and be used for monitoring.

    1. Hi Sandeep,
      1. I haven’t tested the community sheets. But I believe it would get only sheets that belong to the user running DA.
      2. I have been looking at ability to process multiple apps or specifying the appid as part of the SELECT used with the connector. I could see that making it easier to gather from multiple apps and even do some cross analysis. I’m wondering your suggestion of “regular monitoring”. I see DA as being used at one point in time against an app — for example, before it goes to production or to diagnose a specific performance complaint.

  17. Thanks Rob!!
    We got quite a few super users in our organization. Unfortunately with that flexibility, users are able to create a lot of their own stuff and sometimes those objects are not very efficient. So we want to keep monitoring at object and sheet level as to what is degrading performance. In that regards only if DA can assess all sheets whether approved or not, published or unpublished then we can keep a better control. I tested for community sheets and it was able to access but did not consider the unapproved user sheets running the DA.

    1. Thanks for that clarification. I understand your requirement now. I’ll take a look and see what I can do.

      1. Good morning Rob,

        Do you have any updates on this? We are experiencing the same issue. I believe this added functionality would be very useful to many.

        Thanks

          1. Rob,

            Thanks for your response. In the meantime is there a way for me to get the unpublished app objects from each sheet?

          2. Hello Rob,
            Hope you are doing well during this crazy time. I was wondering if you had started looking at adding the private sheets to the Document Analyzer.

            Thanks

          3. I have not started working on this, but hope to address a round of updates this summer.

  18. We are running DA on server. Runs for couple of folks but fails for few with below error
    System.IO.IOException: Unable to read data from the transport connection: An established connection was aborted by the software in your host machine. —> System.Net.Sockets.SocketException: An established connection was aborted by the software in your host machine

      1. Take a look at the log in
        C:\temp\QsAppMetadataConnector\log
        to see if there is more information, or to see what was happening before the error.

  19. Hi Rob,
    Is it possible to loop my published apps and get the informations about them like variables, master items, objects as pivot table or scatter chart … and so on? Like qs document analyser but not just one app, all apps with loop

    Thanks

  20. Hi Rob,

    I’m having trouble using the connector, it cannot be found (unknown connection type).
    I’ve tried installing it to various locations:
    C:\Program Files\Common Files\Qlik\Custom Data
    C:\Program Files\Common Files\Qlik Tech\Custom Data
    C:\Program Files (x86)\Common Files\Qlik\Custom Data
    And to the shared location.
    Nothing works.. any idea?

    I have unblocked the zip when downloaded it.
    I have restarted the services.

    Thanks

      1. Nope..
        On another server it works fine .
        As you stated in previous comments, you didn’t understand when it’s working and when it’s not, I guess it’s one of these cases.
        But if you have some more recommendations regarding where to check or install the connector, i’ll be more to happy to check.

        Thanks.

  21. Dear Rob,

    I am trying to install QSDA in server. I have pasted the connector in “C:\Program Files\Common Files\Qlik\Custom Data”. But I am keep on getting the following error. I gave the machine name with prefix(example: qlikdev/qlik). Any idea why it is happening?
    ERROR cannot connect to Qlik Sense. Connection failed after 4 attempts. Error message: Value cannot be null. Parameter Name: uriString

    1. Someone else has reported this problem as well. What is the auth for your default proxy and what is the auth for your “/qlik” proxy?

      1. Hi Rob,
        I have the same problem, and my proxy is configured with windows authentication.

      2. Hi Rob… Thanks for everything. I have the same problem too. The prefix I set was: win and still I get the same Arockiya error.

  22. Hi Rob,
    First of all, thank you for easing our lives.
    I installed QS Document Analyzer in a cluster server environment. I followed the installation steps. I published the QS Document Analyzer to Monitoring Apps stream. I was able to do the analysis with Qlik service account. But i couldn’t open and run the analysis with any other user than service account.
    When i try, i get access is denied error.
    Do you have any suggestions?
    Thanks in advance.

    1. Hi. I think you will need to duplicate the QS Document Analyzer app and run it from My Work stream.

      1. Hi Rob,
        We’re using a separate, dev vp, with form login auth method. I published the app, because it needs window auth method which we’are only using in prod.
        I’ll create a new dev vp, with windows auth method and then try again from my work.
        Thanks,
        Emre.

  23. Hi Rob,

    I have tried it in server & connection has been created automatically,
    when i tried reload the application I’m getting the below error.
    Can you please check about the issue.

    Thanks,
    Mani

    The following error occurred:
    QVX_UNKNOWN_ERROR: Connection failed after 4 attempts. Error message:
    No connection could be made because the target machine actively refused it [::1]:4848. Stack trace written to C:\ProgramData\QlikTech\Custom Data\QsAppMetadataConnector\Log\StackTrace.txt
    The error occurred here:
    AppInfo:
    Load
    *,
    Hash128(AnalysisComputerName, AppName, AnalysisDatetime) as %KeyDocument,
    AppTitle & ‘ ‘ & AnalysisDatetime as [Analysis Name],
    ‘Baseline’ as [Analysis Title],

    1. You may not have configured the connector for server connection. Please refer to the documentation.

      1. Yeah Rob , i tried to configure the connection from Desktop to Enterprise , then one server is working fine, in other server if i given my host , it is not connecting.
        giving me below error.
        Error :
        Connection failed to enterprise error cannot connect to Qliksense not a valid method Parameter response .

        Thanks a lot Rob.
        Regards,
        Mani

        1. The error “not a valid method Parameter response” generally means no license slot available. This is either because the userid does not have a license or has used up all 5 license slots. If you’ve used up the 5 slots, wait a few minutes and it will clear up.

  24. Hi Rob Iam trying to analyze an app in Qlik Sense document analyzer I selected the app in the appmeta and then I saved the changes and then I reloaded the data but iam getting some master messure error iam using desktop version of qlik sense

  25. Hi Rob,
    Iam trying to connect enterprise version for qs document analyzer when I tried to connect iam getting like connection failed to enterprise (host name) error cannot connect to qlik sense failed after attempts error message
    Value cannot be null
    Parameter name uristring
    Please help me with this rob

      1. I found 2 proxy in the virtual proxies sir one is central proxy default that is default virtual proxy and other is desktop proxy

        1. 1. Make sure you are using the latest 1.7.1 release.
          2. Only windows authentication is unspported.
          3. Some users have reported problems using non-default virtual proxy, I’m currently looking at that but don’t have a fix yet.

          1. Hi Rob,

            we can confirm issues when using a non-default virtual proxy (because default proxy does not use windows auth). When connecting to Host qlikserver/ldap we get a “GeneralCommunicationException with communication error WebSocketConnectionNotAccepted and http error code 500”

            Anyway many thanks for your very helpful tool!

  26. Hey guys, I’m trying to configure QS MetadataConnector but I’m having some issues.

    The current QS server has two virtual proxies, and the default one doesn’t use Windows authentication (the other one does). Whenever I to connect I get the following error:

    ‘Value cannot be null’

    Host Name:
    Server/VirtualProxy (the one with windows authentication)

    Is it possible to use the metadataconnector when the default virtual doesn’t use windows authentication? Do I need to change anything?

  27. Hi Rob,

    Love the Document Analyzer, it’s a brilliant tool.
    I’m trying to get it working on server and having some issues with the connector. In the data connections library accessed through the app load script I see ‘Unknown connection type: QsAppMetadataConnector.exe.’
    I’ve tried installing it to various locations (on all nodes in the cluster):
    C:\Program Files\Common Files\Qlik\Custom Data
    C:\Program Files\Common Files\Qlik Tech\Custom Data
    C:\Program Files (x86)\Common Files\Qlik\Custom Data
    I think C:\Program Files\Common Files\Qlik\Custom Data
    is correct as I have an Oracle ODBC connector I’m using and it becomes disabled in my data connections library if I change the folder names in this URL path.
    Is there anything I can do to edit the data connection parameters directly in the string in the QMC?
    Any ideas where to look next?

    Cheers,

    Scott.

    1. Think I’ve solved my own issue Rob. Restarted services on all nodes, the connector was recognised and now I’m all up and running.

      My next thought, and I haven’t looked into this yet, how could you schedule and automate the doc analyzer to read through multiple apps to identify issues – you could then generate alerting off the back of this, or simply feed the info into a single dashboard for manual monitoring. Could you use a ‘WITH CONNECTION’ approach similar to adjusting a REST API connection in Qlik?

      1. Good to hear it’s working. The connector is pretty much primed to loop through apps. Notice that the table names in the select take an optional appid. eg appid.AppInfo. There is also an AppIdentifier table. See the FindAppId() sub for an example of that. One issue may be licensing when opening many apps, haven’t tried it. So…the potential code is there, some enterprising individual needs to modify the script.

        1. Sounds great Rob.
          I’ll give it a go and report back (and share the code/app I create if it’s a success).
          Thanks again for the awesome resources you share for us Qlik devs!

  28. Hi Rob,
    I am trying to install QSDA in server. I have pasted the connector in “C:\Program Files\Common Files\Qlik\Custom Data”. But I am keep on getting the following error. I gave the machine name with prefix(example: /win). Any idea why it is happening?
    ERROR cannot connect to Qlik Sense. Connection failed after 4 attempts. Error message: Value cannot be null. Parameter Name: uriString

  29. hi ,
    while the app running i get error :
    “QVX_UNKNOWN_ERROR: Method “GetLayout” timed out. Stack trace written to C:\ProgramData\QlikTech\Custom Data\QsAppMetadataConnector\Log\StackTrace.txt”

    what can i do?

    1. Calculation time for a viz has exceeded the default (90 seconds) timeout. See the “Configuring Connector Timeout” section in the user guide or apply a bookmark or selections to calculate with a smaller set of data.

  30. Hi Rob,

    On my server I use port 446, but I am encountering the following error when trying to configure the connector:

    Connection failed to enterprise (SERVER) ERROR Cannot connected to Qlik Sense Connection failed after 4 attempts. Error Message: Unable read data from the transport connection: An existing connection was forcibly closed by the remote host.

    Best Regards.
    Rafael M.

  31. Hello, Rob,
    Thank you for this extremely useful tool. I have used it with QlikView for a long time and now I have it set up in Qlik Sense.
    There, while analyzing an app, I noticed that a field that is only used in a sorting expression is marked as unused. If I delete the field, the sorting no longer works. Is this a bug in QS Document Analyzer?
    Best regards
    Benno

  32. HI Rob,

    I have configured Qlik Sense Document Analyser on my development server. The only issue I noticed that “appmeta” connector often doesn’t work. Either I have to restart the Qlik services or wait for some time. So when I go to configuration tab, and write App name, it says Error QVX_UNKNOWN_ERROR: Not a valid method Parameter name: response. Stack trace written to C:\ProgramData\QlikTech\Custom Data\QsAppMetadataConnector\Log\StackTrace.txt

    System.ArgumentOutOfRangeException: Not a valid method

    To fix it, I restart Qlik services, open “appmeta” connector, press connect button and then reenter app name and it works but sometimes doesn’t.

    Can I know this behaviour is at my side or it is usual ?

    1. Hi Rohit,
      This problem is due to the 5 license slots being used up. It will clear itself up if you wait a few minutes. The problem occurs when you configure the connection or reload the analysis script several times in succession. The problem should be addressed in the new QSDA Pro version currently under development.

  33. Well I am not sure if I reloaded the app multiple times.

    Important question. When we run the setup file it asks 4 folder locations:
    1. Apps
    2. Extensions
    3. Connectors
    4. Documents

    For Multi node setup or single, which folder I need to choose for Apps and Extensions, folders from service cluster or create two new folders with name apps and extensions.

    Why I am asking it, because if I set apps folder from service cluster for 1st option , it has all birnary files and setup.exe brings .qvf file so I am not sure .qvf fille be okay or not at service cluster apps folder.

    1. For server installation, please refer to the User Guide — available when you unzip the download — section “Qlik Sense Server Installation”.

  34. It says Point 3:
    Ensure that the path directories reflect your desired folder destinations, browse to alter if
    necessary and hit next to continue. The next dialogue box will prompt you to install, do so and
    once completed select finish.

    My question is do we need to browse service cluster Apps and Extensions folder ?

    Thanks,
    Rohit

    1. You begin by doing a *desktop* install. And then manually move the files from Desktop to Server. Point #3 is part of the Desktop install, so use the default desktop folders.

  35. So all 4 paths are just for extract the files. Later we move it to server i.e. import QSDA app from QMC. We don’t need to put any file to any service cluster folder.

Leave a Reply

Your email address will not be published. Required fields are marked *