Saturday 29 August 2015

How to connect to Tableau Server

follow the steps below to connect to and query the database. The username you use will depend on which database views and tables you want to use.
  1. In Tableau Desktop select Data > Connect to Data, then select PostgreSQL as the database to connect to. You may need to install the PostgreSQL database drivers. You can download drivers from www.tableau.com/drivers.
  2. In the PostgreSQL connection dialog box, enter the name or URL for Tableau Server in the Server box. If you have a distributed server installation and a worker is hosting the repository, enter the name of the worker instead. If you are using an Apache load balancer, enter the actual name or ip address of the database server rather than the Tableau Server name.
    You should connect using the port you have set up for the pgsql.port, which is 8060 by default. For more information about ports, see Tableau Server Ports.
    Note: The dbpass command does not open any ports in the firewall. You may need to manually open the port in any firewall between your external client and the Tableau Server database.
  3. Enter workgroup as the Database to connect to.
  4. Connect using one of the following users and the password you specified:
    Username: tableau or readonly
    Password: The password you specified when you enabled access to the Tableau Server database for the specified user
  5. Click Connect.
  6. Select one or more tables to connect to.
    The "tableau" user has access to all of the tables that start with an underscore or with hist_. For example, you can connect to_background_tasks and _datasources. The tables that begin with historical_ point to hist_ tables. The hist_ tables include information about server users that isn't currently presented in the Actions by Specific User view. The "readonly" user has access to additional tables that can be used to query other information about server usage.
  7. Click Go to Worksheet.

Changing Tableau server Password and Providing access to external Users

You can use Tableau Desktop to connect to and query the Tableau Server repository using two special, built-in users. The "tableau" user has access to several database views you can use as part of building your own analyses of Tableau Server activity. The "readonly" user has access to additional database tables that you can use to create views for even more in-depth analysis.
To access the Tableau Server repository, you need to use the tabadmin command line utility to enable external access to the database.
  1. Open a command prompt as an administrator and type:
    cd "C:\Program Files\Tableau\Tableau Server\9.0\bin"
  2. Version 8.2.4 and earlier: Enter the following command to enable external access to the database for the tableau user:
    • tabadmin dbpass [password]
      For example, to enable access for the "tableau" user with a password of "p@ssword":
      tabadmin dbpass p@ssword
    Version 8.2.5 and later: Enter the following command to enable external access to the database for the tableau user or the readonly user:
    • tabadmin dbpass --username [tableau | readonly] [password]
      For example, to enable access for the "tableau" user with a password of "p@ssword":
      tabadmin dbpass --username tableau p@ssword
      or to enable access for the "readonly" user with a password of "p@ssword":
      tabadmin dbpass --username readonly p@ssword
      Note: If no user is specified, dbpass enables access for the "tableau" user.
  3. Restart Tableau Server:
    tabadmin restart
After you've enabled external access to the database, Tableau allows any IP address access to the database as long as the correct password is provided. Follow the steps in Connecting to the Tableau Server Database to connect.

Disable external access to the Tableau Server Database

If you want to disable access by "tableau" or "readonly" after enabling it, use the tabadmin dbpass again.
  • Run the command tabadmin dbpass --disable --username [user] then restart the server.
    For example:
    tabadmin dbpass --disable --username readonly
    tabadmin restart
Note: If no user is specified, the --disable option disables access for the "tableau" user.

Friday 28 August 2015

Solution Selling means the Whole Solution – Distributor Evolution

Nearly 20 years ago a friend made this comment: “(Industrial) customers don’t want to buy electrical products, they want to buy solutions. If you only sell half of the solution, it’s not really a solution-- it’s a bag of parts.”

At the time, I was squarely in the center of the electrical automation business. And, like most salespeople, everything I didn’t sell was invisible. On a purely intellectual basis, I realized the PLCs, drives, sensors and motion control systems I sold were connected to something, but emotionally, I didn’t care. I had my bag of tricks and my team was better equipped to assist in project layout, troubleshooting and advanced support than any other electrical distributor and I was fat, dumb and happy. But my eyes were opened.

I lost an order.  After the fact, my customer was kind enough to explain the reason why. It seems he felt the mechanical portion of the order was more complex than my fancy sensors. The competitor sold both and during the discussion of the mechanics, he convinced the customer that sensor placement required knowledge of the limitations of the mechanics. He knew about both and would solve the whole problem. It was a déjà-vu moment. It ruined my day, and as I made the trip back to the office, my buddy’s comments banged around in my brain.






I was convinced. I immediately started scanning the horizon for products just outside my selling sphere of influence. I began to realize the need for an understanding of my product’s place in the solution. And, most importantly, I started to explore plans for expanding my percentage of the customer’s total solution.

Since founding River Heights Consulting, I have explored and written about the need for distributors to broaden their product scopes into the whole solution. A few progressive distributors have followed this path. From my point of view, Fluid Power distributors have made the greatest progress; perhaps they were scared into making the move.

Recalling back to the 1990s, fluid power distributors faced-off against massive technological gains in the electronic world. Many of the traditional applications for their motion-centric hydraulic products were being challenged by less costly and feature rich electronic offerings. Many pundits heralded the end of their industry. Scare tactics from experts and feedback from customers drove many of them to develop expertise in motion control outside of their normal portfolio of products. Distributors evolved.


Conjuring up the words of Theodore Levitt, “What business are you really in? The railroads let others take customers away from them because they assumed themselves to be in the railroad business instead of the transportation business.” As distributors we must ask ourselves what business are we in.

Most distributors claim to be in the business of providing customers with solutions. Yet, most limit their solutions to advice and services wrapped around a bundle of products. Progressive distributors view the solution as whatever it takes to really fix the problem.

What should you do? Here are six thoughts to explore:
1. What are the limits of your solutions?
2. What products are invisible to you and your sales team? Just because you don’t sell it doesn’t mean your customers don’t need it.
3. Are there technologies not found on your “linecard” which are commonly used to create the total solution?
4. Do you see competitors with broader based solution capabilities than your organization? Are you willing to eventually hand over your portion of that solution?
5. What technologies (and product sets) will be important to your customers in the future? Will these technologies absorb some of the applications you currently support?
6. Have you asked your customers where they need additional solution support?

Finally, here are a couple of pieces of news:
Cincinnati-based CBT was recently recognized as joining the Top 50 list of Industrial Distributors. CBT used to be called Cincinnati Belt and Transmission. The company now carries a complete line of electrical, automation, pneumatic and power transmission products as well as their old standby belts and conveyor offering.

A recent article in Fluid Power World highlighted the Flodraulic Group. A quote from Bill Tulloch summarizes my
whole point:
“A good industrial distributor now has to integrate multiple technologies. He may be bringing to that customer pneumatics and hydraulics of course, but you’re bringing mechanical, you’re bringing electrical and controls. You have to understand PLCs and how that will control his equipment.”

Read the article here

Space and time limitations keep us from exploring dozens of other examples. The point is, morphing to match customer needs makes sound business sense.

Tuesday 25 August 2015

tabcmd to generate a PDF of a Tableau view and send email messages

To test generating a PDF, type the following command:
tabcmd get "<url-of-view>.pdf" -f "<filename>.pdf"
Notes:
  • Replace <url-of-view> with the view's URL path after it has been published.
  • In versions of Tableau Server earlier than 9.0, ensure that you append <url-of-view> with ".pdf", as in the example above. In Tableau Server 9.0 and later, you do not have to include the filename extension with the <url-of-view> value for PDF files; the command infers that you want a PDF file from the name you provide in the -f parameter.
  • Replace <filename> with the name you want to give to the generated PDF file.
For example, the tabcmd command can look like this:
tabcmd get "/views/Wow/SummaryReports.pdf" -f "progressReport.pdf"
If the PDF generates successfully, tabcmd places the PDF file "progressReport.pdf" in the current working directory.
Note: For Tableau Server 8.1 through 8.3, ensure that you do not include the hash tag (#) and number at the end of the URL. For Tableau Server 9.0 and later, do not include ":iid=<n>."


While the tabcmd by itself cannot send email messages, if you are using Tableau Server 8.0 and later, you can configure email alerts if there is a system failure or subscriptions that allow users to subscribe to their favorite views.  Alternatively, you can easily add this functionality through scripting. Many applications and scripting languages are available, and you can combine the printing automation of tabcmd with practically any other logic. Two examples illustrate this capability.
This example uses email shareware called febootimail.exe (search the Web for "febootimail" for more information). This program allows full control over aspects of the e-mail generation.
Here is an example that sends as an e-mail attachment the PDF progress report you generated in the last example.
tabcmd login -s http://tableauserver:80 -u admin -p admin
tabcmd get "/views/Wow/SummaryReports.pdf" -f "progressReport.pdf"
febootimail.exe -SMTP yourSMTPhost.yourcompany.com -TO "recipient1@yourcompany.com; recipient2@yourcompany.com;recipient3@yourcompany.com" -FROM sender@yourcompany.com -SUBJECT "Generated Tableau View - Tableau Server Automated Alert System (TSAAS)" -ATTACH " C:\Program Files\Tableau\Tableau Command Line\progressReport.pdf" -BODY"this is the text of the body"
Note: For Tableau Server 8.1 through 8.3, ensure that you do not include the hash tag (#) and number at the end of the URL. For Tableau Server 9.0 and later, do not include ":iid=<n>."
If you install febootimail and review its help files, you can note the following:
  • Instead of typing the e-mail addresses of recipients using the TO tag, you can refer to a file.
  • Instead of typing the e-mail body using the BODY tag, you can specify an HTMLFILE tag.
  • You can attach multiple files.
These features provide control over the Tableau generation and e-mail process. Many other applications and scripting languages also have this type of support.

Send formatted email with an embedded image

Tabcmd can generate PNG files, and febootimail.exe can send HTML e-mail. The febootimail help says that the HTML file must be in the same directory as febootimail.
Here is an example script:
tabcmd login -s http://tableauserver:80 -u admin -p admin
tabcmd get "/views/Wow/SummaryReports.png" -f "progressReport.png"
febootimail.exe -SMTP yourSMTPhost.yourcompany.com -TO "recipient1@yourcompany.com; recipient2@yourcompany.com;recipient3@yourcompany.com" -FROM sender@yourcompany.com -SUBJECT "Generated Tableau View - Tableau Server Automated Alert System (TSAAS)" - -HTMLFILE "emailbody.html"
Note: For Tableau Server 8.1 through 8.3, ensure that you do not include the hash tag (#) and number at the end of the URL. For Tableau Server 9.0 and later, do not include ":iid=<n>."
Notice that the BODY tag has been replaced by an HTMLFILE tag. Because tabcmd can auto-generate a PNG image, you can reference that image in the body of an HTML email template. Here is a simple version of this HTML file:
<html>
<head><title>Email Alert</title></head>
<body><img src="progressReport.png"></body>
</html>

Sign in to Tableau Server through Tabcmd (Tableau Server Command Line Tool)

Step 1 

Click the Start button, and select All Programs > Accessories. Right-click the Command Prompt and select Run as administrator.

Step 2 

Type one of the commands below, depending on where the tabcmd utility is running from. If you are running the tabcmd utility from the same machine as Server
  • cd C:\Program Files\Tableau\Tableau Server\<version>\bin
  • cd C:\Program Files (x86)\Tableau\Tableau Server\<version>\bin
If you are running the tabcmd utility on a separate machine from Server:
  • cd C:\Program Files\Tableau\Tableau Server\<version>\extras\Command Line Utility
  • cd C:\Program Files (x86)\Tableau\Tableau Server\<version>\extras\Command Line Utility
Note: Replace <version> with the version of Tableau Server you are running.

Step 3 

Type the following command:
tabcmd login -s http://<host>:<port> -u <username> -p <password>
Notes:
  • Replace <host> and <port> with your specific hostname and port.
  • Replace the <username> and <password> with a valid Tableau Server username and password for someone who has publishing rights.
If the command is executed successfully, you will see something similar to the following example:
C:\tli>tabcmd login -s http://tableauserver:80 -u admin -p password
===== Creating new session
===== Server: http://myserver
=====   Username: admin
===== Connecting to the server...
=====   Signing in...
=====   Auto-sign in to site: Default
===== Creating new session
=====   Server: http://myserver
=====   Username: admin
===== Connecting to the server...
===== Signing in...
===== Succeeded
===== Succeeded

Installing Tableau Server Command Line Tool (Tabcmd)

Tabcmd does not have to be installed on the same machine as Tableau Server. This flexibility makes it highly useful from an administrative and scheduling perspective.

Following steps explains you the installing procedure

Step 1

Go to the tabcmd installer file located in the "extras" folder in the Tableau directory. By default, the folder is located here:
  • C:\Program Files \Tableau\Tableau Server\<version>\extras\TabcmdInstaller.exe
Notes: 
  • Replace <version> with the version number of Tableau Server that you are running. 
  • if you installed 32-bit Tableau Server on a 64-bit operating system, the default path is C:\Program Files (x86)\Tableau\Tableau Server\<version>\extras\TabcmdInstaller.exed

Step 2

Double-click TabcmdInstaller.exe to start the installation process.

Step 3

Follow the steps in the Tableau Server Command Line Utility wizard to install tabcmd.

Notes:
  • Because tabcmd is a command line tool, and due to some limitations with the Windows operating system, Tableau suggests that you install tabcmd to its own folder on the root of the C:\ drive called tabcmd. For example, C:\tabcmd.
  • When you install tabcmdinstaller.exe, Tableau does not automatically add its location to the Windows PATH variable. You will need to either explicitly call tabcmd using its full path, or, add its directory to the PATH variable

Tableau Server Log File Location (Helps to find out actual problem that troubling Tableau Server)

By default, Tableau Server log file archives are gathered in a zip file called logs.zip (you can specify a different name if you create the archive using tabadmin). You can copy the archive from the server to a local computer and open it there, or send it to Tableau Support. When you unzip the archive, a series of folders are created with related log files. This table explains the possible contents of each folder, along with the original location the files came from on the Tableau Server, the process that created the log files, and details about the files.
The Tableau Server log directory is C:\ProgramData\Tableau\Tableau Server\data\tabsvc\logs if you installed Tableau Server on drive C, unless otherwise noted in the table below.

Following list of log file location help you to find out respective log files and its description.

Log Archive File Locations

Files/folders in logs.zip Details Files Generated by Location on Tableau Server
buildversion.txtThe build version of Tableau Server.   
tabsvc.yml   \config
wgserver.checksum    
assetkeyencryptionLogs related to repository encryption.assetkeyencryption.log tabadmin assetkeys \logs\assetkeyencryption
backgrounderLogs related to subscriptions and scheduled activities like extract refreshes, "Run Now" tasks, and tabcmd tasks. backgrounder-#.log
spawn.####.log
tomcat-#.####-##-##.log
backgrounder.exe \logs\backgrounder
cacheserverLogs related to the Cache Server process.redis-server.exe\cacheserver
clustercontrollerLogs related to the Cluster Controller process.clustercontroller.log
clustercontroller.log-####-##-##
clustercontroller.exe\clustercontroller
configConfiguration files.
This is a good place to start gathering information when troubleshooting. Confirm that the configuration settings are what you expect.
connections.yml
workgroup.yml
Tableau Server Configuration\config
datacollector   \logs\datacollector
dataengineThere will be a tdeserver log file for each day with information about data extracts and queries, and responses to VizQL server requests.tdeserver_####_##_##_##_##_##.log tdeserver.exe
tdeserver64.exe
\logs\dataengine
dataserverInformation about connections to Tableau Server data sources.dataserver-#.log dataserver.exe \logs\dataserver
httpdApache logs. Look here for authentication entries. Each request in the Apache log will have a request ID associated with it. This request ID is used throughout the server logs and you can use it to associate log entries with a request.access.####-##-##.##-##-##log
error.log
startup.log
Apache daemon\logs\httpd
licensing   \logs\licensing
logsThis is the location of the logs of most interest and usefulness. Look here after reviewing the configuration files.
tabadmin.log is never overwritten or truncated so it contains all the details.
notify-tabadmin.log contains errors from tabadmin.log (the errors are also included in tabadmin.log).
tablicsrv.log and tabsrvlic.log are related to licensing.
tabadmin.log
tabconfig.log
tablicsrv.log
tabsrvlic.log
wgserver.war.deploy.log
 \logs
pgsqlPostgreSQL database logs, including files related to launching server processes.Tableau data extracts are stored in the PostgreSQL database. tabspawn\logs\pgsql
repository  postgres.exe \logs\repository
service notify-tabsvc.log
tabsvc.log
 \logs\service
solrRelated to search indexing.  \logs\solr
svcmonitor   \logs\svcmonitor
tabadminserviceRelated to log archives created using the Generate a Snapshot of Server Log Files option.   \logs\tabadminservice
tabadmwrkServer Worker Manager process that is used for auto-discovery of worker servers in a distributed environment. tabadmwrk.exe\logs\tabadmwrk
vizportal   \logs\vizportal
vizqlserverRelated to showing and interacting with views.
When running multiple instances of VizQL Server, the instances are distinguished by port number.
notify-production logs contain exceptional events.
vizql-0.log.####-##-##
spawn.####.log
vizqlserver.exe \logs\vizqlserver
vizqlserver\logsMost files are in JSON format.
tabprotosrv.txt is created when you open data or connect to data.
backgrounder_####_####_##_##_##_##_##.txt
dataserver_####_####_##_##_##_##_##.txt
tabadmin_####_##_##_##_##_##.txt
tabprotosrv.txt
vizqlserver_####_####_##_##_##_##_##.txt
wgserver_####_####_##_##_##_##_##.txt
tdserver_vizqlserver_####_####_##_##_##_##_##.txt
  \vizqlserver\logs
wgserverInformation related to administrative tasks, workbook and permissions management, authentication, sign-ins, initial view requests, and publishing requests.
Browsing, searching.
Instances of wgserver are distinguished by port number, immediately following "production" or "notify-production".
notify-production logs contain exceptional events.
There will be a separate production.n_### file for each backgrounder process for each day.
notify-production.n_### correlates to production.n_### but contains only errors.
db-migrate_####_##_##_##_##_##.log
migrate.log
notify-production.####_####_##_##_##_##_##.log
production.####.log
production.####_####_##_##_##_##_##.log
spawn.####.log
tomcat-#.####_##_##.log
wgserver-#.log
wgserver.exe \logs\wgserver
zookeeperInformation related to the Tableau Server Coordination Service.spawn.####.log
zookeeper-#.log
zookeeper-#.log.####_##_##
zookeeper.exe \logs\zookeeper

Tableau Server log files can be found in the following folders on the server:

Tableau Service Logs

The following log files track activities related to the web application, database, and index:
C:\ProgramData\Tableau\Tableau Server\data\tabsvc

VizQL Logs

These log files track activities related to displaying views, such as querying the database and generating images:
C:\ProgramData\Tableau\Tableau Server\data\tabsvc\vizqlserver\Logs

Temporary Files

Any file that starts with exe_ in the folder below is a Tableau Server file and can be deleted.
C:\ProgramData\Tableau\Tableau Server\temp


Sunday 23 August 2015

Data Sources Links for Practice

Tableau Server Tables and Columns (Tables and Readonly)


Tableau Server Processes

There are Tableau Server processes whose default configuration you can change to achieve different results. The topics Improve Server Performance and High Availability describe some of the approaches you can take. High-level status for each process is displayed on the server’s Status page and more detailed information related to some of the processes—such as the background process—is in the Administrative Views topic.
Note: Certain processes listed below cannot be configured: cluster controller and coordination service are installed on every node as part of the base install. They are required on every server node. File store is installed when you install data engine and cannot be installed separately. Every instance of a data engine process will always have one instance of the file store process present as well.
Architecturally, the 64-bit version of Tableau Server uses native, 64-bit processes; the 32-bit version of Tableau Server uses 32-bit processes. The exception is the data engine. If the 32-bit version of Tableau Server is installed on a 64-bit operating system, the 64-bit version of the data engine process is used.
For information on log files generated by these processes, see Server Log File Locations.
Process
File Name
Purpose
Multi-Threaded?
Performance Characteristics
API Server
wgserver.exe
Handles REST API calls
Yes
Unless you are using REST APIs for critical business processes, this service can be down without impacting the overall health of Tableau Server.
Application Server
vizportal.exe
Handles the web application, supports browsing and searching
Yes
Only consumes noticeable resources during infrequent operations, like publishing a workbook with an extract, or generating a static image for a view. Its load can be created by browser-based interaction and by tabcmd.
Backgrounder
backgrounder.exe
Executes server tasks, including extract refreshes, ‘Run Now’ tasks, and tasks initiated from tabcmd
No
A single-threaded process where multiple processes can be run on any or all machines in the cluster to expand capacity. The backgrounder normally doesn’t consume much process memory, but it can consume CPU, I/O, or network resources based on the nature of the workload presented to it. For example, performing large extract refreshes can use network bandwidth to retrieve data. CPU resources can be consumed by data retrieval or complex tabcmd tasks.
Cache Server
redis-server.exe
Query cache
No
A query cache distributed and shared across the server cluster. This in-memory cache speeds user experience across many scenarios. VizQL server, backgrounder, and data server (and API server and application server to a lesser extent) make cache requests to the cache server on behalf of users or jobs. The cache is single-threaded, so if you need better performance you should run additional instances of cache server.
Cluster Controller
clustercontroller.exe
Responsible for monitoring various components, detecting failures, and executing failover when needed
n/a
Included in the base install on every node.
Coordination Service
zookeeper.exe
In distributed installations, responsible for ensuring there is a quorum for making decisions during failover
n/a
Included in the base install on every node.
Data Engine
tdeserver64.exe
tdeserver.exe (32-bit)
Stores data extracts and answers queries
Yes
The data engine's workload is generated by requests from the VizQL server, application server, API server, data server, and backgrounder server processes. The data engine services requests from most of the other server processes as well. It is the component that loads extracts into memory and performs queries against them. Memory consumption is primarily based on the size of the data extracts being loaded. The 64-bit binary is used as the default on 64-bit operating systems, even if 32-bit Tableau Server is installed. The data engine is multi-threaded to handle multiple requests at a time. Under high load it can consume CPU, I/O, and network resources, all of which can be a performance bottleneck under load. At high load, a single instance of the data engine can consume all CPU resources to process requests.
Data Server
dataserver.exe
Manages connections to Tableau Server data sources
Yes
Because it’s a proxy, it’s normally only bound by network, but it can be bound by CPU with enough simultaneous user sessions. Its load is generated by browser- and Tableau Desktop-based interaction and extract refresh jobs for Tableau Server data sources.
File Store
filestore.exe
Automatically replicates extracts across data engine nodes
n/a
Installed with data engine (cannot be installed separately). A file store process will always be present if there are one or more data engine processes installed.
Repository
postgres.exe
Tableau Server database, stores workbook and user metadata
n/a
Normally consumes few resources. It can become a bottleneck in rare cases for very large deployments (thousands of users) while performing operations such as viewing all workbooks by user or changing permissions. For more information, see Tableau Server Repository.
Search & Browse
searchserver.exe
Handles fast search, filter, retrieval , and display of content metadata on the server
Yes
The process is memory bound first, and IO bound second. The amount of memory used scales with the amount of content (number of sites/projects/workbooks/datasources/views/users) on the server.
VizQL Server
vizqlserver.exe
Loads and renders views, computes and executes queries
Yes
Consumes noticeable resources during view loading and interactive use from a web browser. Can be CPU bound, I/O bound, or network bound. Process load can only be created by browser-based interaction. Can run out of process memory.


Configure with the tabadmin set Options

You can use the tabadmin options vizqlserver.browser.render to disable or enable client-side rendering andvizqlserver.browser.render_threshold and vizqlserver.browser.render_threshold_mobile to change the thresholds for client-side rendering. See tabadmin set options for details.

tabadmin set options

Use the table below to learn more about Tableau Server options you can configure using the set command. See Tableau Server Ports for a complete list of ports.
OptionDefault ValueDescription
api.server.enabledtrueAllows access to the REST API. By default, this functionality is enabled.
auditing.enabledtrueAllows access to the PostgreSQL (Tableau Server's own database) historical auditing tables. See Create Custom Administrative Views for details.
backgrounder.extra_timeout_in_seconds1800The number of seconds beyond the setting inbackgrounder.querylimit before a background task is canceled. This setting makes sure that tasks do not hold up subsequent jobs if they are stalled. The setting applies to processes listed in backgrounder.timeout_tasks. To disable backgrounder timeouts, set the value ofbackgrounder.extra_timeout_in_seconds to "" (an empty string).
backgrounder.querylimit7200Longest allowable time for completing a single extract refresh task, in seconds (7200 seconds = 2 hours).
backgrounder.reset_schedules_on_startuptrueControls when to run background tasks that were scheduled to run at a time when the server was stopped. When set totrue (the default), tasks are run at their next scheduled time. When set to false, all tasks that were scheduled to run when the server was stopped are run, simultaneously, at server startup, including times when the Tableau Server backup file (.tsbak) is restored.
backgrounder.timeout_tasksrefresh_extracts, increment_extracts, subscription_notify, single_subscription_notifyThe list of tasks that can be canceled if they run longer than the combined values in backgrounder.querylimit andbackgrounder.extra_timeout_in_seconds. The list of tasks is delimited with commas. The default list represents all the possible values for this setting.
dataengine.port27042Port that the data engine runs on.
dataserver.port9700Port that the data server runs on.
gateway.public.hostName of the machineThe name (URL) of the server, used for external access to Tableau Server. If Tableau Server is configured to work with a proxy server or external load balancer, it is the name entered in a browser address bar to reach Tableau Server. For example, if Tableau Server is reached by enteringtableau.example.com, the name for gateway.public.host istableau.example.com.
gateway.public.port80 (443 if SSL)Applies to proxy server environments only. The external port the proxy server listens on.
gateway.timeout1800Longest amount of time, in seconds, that the gateway will wait for certain events before failing a request (1800 seconds = 30 minutes).
gateway.trustedIP address of proxy server machineApplies to proxy server environments only. The IP address(es) or host name(s) of the proxy server.
gateway.trusted_hostsAlternate name(s) of proxy serverApplies to proxy server environments only. Any alternate host name(s) for the proxy server.
java.heap.size128mSize of heap for Tomcat (repository and solr). This generally does not need to change except on advice from Tableau.
native_api.connection.limit.<connection class> Set parallel query limit for the specified data source (connection class). This overrides the global limit for the data source. For information about specific connection class strings, see the Tableau Knowledge Base.
native_api.connection.limit.globallimit16Global limit for parallel queries. Default is 16 except for Amazon Redshift which has a default of 2. For information about configuring parallel queries in Tableau Server, see theTableau Knowledge Base.
pgsql.port8060Port that PostgreSQL listens on.
rsync.timeout600Longest allowable time, in seconds, for completing file synchronization (600 seconds = 10 minutes). File synchronization occurs as part of configuring high availability, or moving the data engine and repository processes.
server.log.levelinfoThe logging level for logs written toProgramData\Tableau\Tableau Server\data\tabsvc\logs\vizqlserver\Logs\*.txt.
Set to debug for more information. When set to debug, logging is set to pre-8.2 verbosity. Using the debug setting can significantly impact performance, so you should only use it when directed to do so by Tableau Support. See Change Logging Levels for more information.
service.jmx_enabledfalseSetting to true enables JMX ports for optional monitoring and troubleshooting. See Enable the JMX Ports for details.
service.max_procs# of processesMaximum number of server processes.
service.port_remapping.enabledtrueDetermines whether or not Tableau Server will attempt to dynamically remap ports when the default or configured ports are unavailable. Setting to false disables dynamic port remapping. See Tableau Server Ports for more information.
session.ipstickyfalseMakes client sessions valid only for the IP address that was used to sign in. If a request is made from an IP address different from that associated with the session token, the session token is considered invalid.
In certain circumstances—for example, when Tableau Server is being accessed by computers with known and static IP addresses—this setting can yield improved security.
Note:  Consider carefully whether this setting will help your server security. This setting requires that the client have a unique IP address and an IP address that stays the same for the duration of the session. For example, different users who are behind a proxy might look like they have the same IP address (namely, the IP address of the proxy); in that case, one user might have access to another user's session. In other circumstances, users might have a dynamic IP address, and their address might change during the course of the session. If so, the user has to sign in again.
solr.rebuild_index_timeout3600When Tableau Server is upgraded or when a .tsbak file is restored, the background task rebuilds the search index. This setting controls the timeout setting for that task (3600 seconds = 60 minutes).
subscriptions.enabledfalseControls whether subscriptions are configurable system-wide. See Manage Subscriptions.
subscriptions.timeout1800Number of seconds after which the background process handling a subscription times out.
tomcat.https.port8443SSL port for Tomcat (unused).
tomcat.server.port8085Port that tomcat listens on for shutdown messages.
vizportal.log.levelinfoThe logging level for vizportal Java components. Logs are written to ProgramData\Tableau\Tableau Server\data\tabsvc\logs\vizportal\*.log.
Set to debug for more information. Using the debug setting can significantly impact performance, so you should only use this setting when directed to do so by Tableau Support. SeeChange Logging Levels for more information.
vizqlserver.allow_insecure_scriptsfalseAllows a workbook to be published to the server from Tableau Desktop, and to be opened from the server, even if the workbook contains SQL or R expressions that are potentially unsafe (for example, a SQL expression that could potentially allow SQL injection). When this setting is false(the default), publishing a workbook or opening it from the server results in an error message, and the workbook is blocked. You should set this value to true only if you want to use workbooks that contain SQL or R expressions that have been detected as potentially unsafe, and only if the workbooks come from a safe source and you have verified that they do not contain an unsafe expression.
vizqlserver.browser.rendertrueViews under the threshold set byvizqlserver.browser.render_threshold orvizqlserver.browser.render_threshold_mobile are rendered by the client web browser instead of by the server. See About Client-Side Rendering for details.
vizqlserver.browser.render_threshold100The default value (100) represents a high level of complexity for a view displayed on a PC. Complexity factors include number of marks, headers, reference lines, and annotations. Views that exceed this level of complexity are rendered by the server instead of in the PC's web browser.
vizqlserver.browser.render_threshold_mobile20The default value (20) represents a high level of complexity for a view displayed on a tablet. Complexity factors include number of marks, headers, reference lines, and annotations. Views that exceed this level of complexity are rendered by the server instead of in the tablet's web browser.
vizqlserver.clear_session_on_unloadfalseDetermines whether or not VizQL sessions are kept in memory when a user navigates away from a view or closes their browser. The default value (false) keeps sessions in memory. To close VizQL sessions on leaving a view or closing a browser, set this to true. See General Performance Guidelines for more information.
vizqlserver.geosearch_cache_size5Sets the maximum number of different geographic search locale/language data sets that can be loaded into server memory at the same time. When the server receives a geographic search request for locale/language data set that is not in memory, it will load the set into memory. If loading the data set will exceed the specified limit, the least recently used locale/language data set is cleared from memory so the requested one can be loaded. The minimum value is 1. Each cache takes approximately 60 MB in memory (so if you set this to 10, the memory usage would be 600 MB (60 * 10).
vizqlserver.log.levelinfoThe logging level for vizqlserver Java components. Logs are written to ProgramData\Tableau\Tableau Server\data\tabsvc\logs\vizqlserver\*.log.
Set to debug for more information. Using the debug setting can significantly impact performance, so you should only use it when directed to do so by Tableau Support. See Change Logging Levels for more information.
vizqlserver.port9100Base port for the VizQL servers.
vizqlserver.protect_sessionstrueWhen set to true (the default), prevents VizQL sessions from being reused after the original user signs out.
vizqlserver.querylimit1800Longest allowable time for updating a view, in seconds.
vizqlserver.rserve.host Specifies an Rserve host. This setting, and the three settings immediately below, supports R functionality in workbooks.R is an open source software programming language and a software environment for statistical computing and graphics. In Tableau Desktop, you can use a set of four functions to pass R expressions to an Rserve server and obtain a result. If you upload a workbook that uses any of these functions, you should configure Tableau Server for an Rserve connection, by configuring this option and the three following. Otherwise, any worksheets that use R functionality will be unavailable. See R Connection in the Tableau Desktop help for further details.
vizqlserver.rserve.port6311Specifies an Rserve port. This setting supports R functionality in workbooks.
vizqlserver.rserve.username Specifies an Rserve username. This setting supports R functionality in workbooks. Not all Rserve hosts require a username and password.
vizqlserver.rserve.password Specifies an Rserve password. This setting supports R functionality in workbooks. Not all Rserve hosts require a username and password.
vizqlserver.session.expiry.minimum5Number of minutes of idle time after which a VizQL session is eligible to be discarded if the VizQL process starts to run out of memory.
vizqlserver.session.expiry.timeout30Number of minutes of idle time after which a VizQL session is discarded.
vizqlserver.showdownloadtrueControls the display of the Download button in views.
vizqlserver.showsharetrueControls the display of the Share button in views.
vizqlserver.trustedticket.log_levelinfoThe logging level for trusted authentication. The logs are written to ProgramData\Tableau\Tableau Server\data\tabsvc\logs\vizqlserver\vizql-*.log.
Set to debug for more information. Using the debug level can significantly impact performance, so you should only use it when directed to do so by Tableau Support. See Change Logging Levels for more information.
vizqlserver.trustedticket.token_length24Determines the number of characters in each trusted ticket. The default setting of 24 characters provides 144 bits of randomness. The value can be set to any integer between 9 and 255, inclusive.
vizqlserver.trustedticket.use_deprecated_9digit_tokenfalseWhen set to true, tickets are 9 digits long (as in version 8.0 and earlier) and the settingvizqlserver.trustedticket.token_length is ignored.
vizqlserver.url_scheme_whitelist Adds to the protocols to whitelist when using URL actions on views and dashboards. http, https, gopher, news, ftp, andmailto are whitelisted by default.
wgserver.audit_history_expiration_days183Number of days after which historical events records are removed from the PostgreSQL database (the Tableau Server database). See Create Custom Administrative Views for details.
wgserver.authentication.desktop_nosamlfalseControls whether or not Tableau Desktop uses SAML for authentication. Use this option when your IdP does not use forms-based authentication. Valid options are true andfalse. By default this is not set, so the behavior is equivalent to setting it to false. Set this to true to disable SAML authentication for Tableau Desktop.
wgserver.authentication.app_nosamlfalseServes as the above setting for the Tableau Mobile app.
wgserver.change_owner.enabledtrueControls whether the ownership of a workbook, data source or project can be changed. Other options include false andadminonly. See Manage Ownership for details.
wgserver.clickjack_defense.enabledfalseWhen set to true, helps prevents a malicious person from "clickjacking" a Tableau Server user. In a clickjack attack, the target page is displayed transparently over a second page, and the attacker gets the user to click or enter information in the target page while the user thinks he or she is interacting with the second page.
Enabling clickjack protection can affect the behavior of content served by Tableau Server. For more information, seeClickjack Protection in Tableau Server in the Tableau Knowledge Base.
wgserver.domain.fqdnvalue of %USERDOMAIN%The fully qualified domain name of the Active Directory server to use.
wgserver.log.levelinfoThe logging level for wgserver Java components. Logs are written to ProgramData\Tableau\Tableau Server\data\tabsvc\logs\wgserver\*.log.
Set to debug for more information. Using the debug setting can significantly impact performance, so you should only use it when directed to do so by Tableau Support. See Change Logging Levels for more information.
wgserver.password_autocomplete.enabledfalseControls whether web browsers are allowed to automatically complete password fields.
wgserver.restrict_options_methodtrueControls whether Tableau Server accepts HTTP OPTIONS requests. If this option is set to true, the server returns HTTP 405 (Method Not Allowed) for HTTP OPTIONS requests.
wgserver.saml.idpattribute.usernameusernameSpecifies the attribute used by the IdP for SAML authentication. The default is username.
wgserver.saml.maxassertiontime3000Specifies the maximum number of seconds, from creation, that an assertion is usable.
wgserver.saml.maxauthenticationage7200Specifies the maximum number of seconds allowed between user's authentication and processing of the AuthNResponse message.
wgserver.saml.responseskew180Sets the maximum number of seconds difference between Tableau Server time and the time of the assertion creation (based on the IdP server time) that still allows the message to be processed.
wgserver.session.idle_limit240The number of minutes of idle time before a sign-in to the web application times out.
workerX.gateway.port80 (443 if SSL)External port that Apache listens on for workerX. worker0.gateway.port is Tableau Server’s external port. In a distributed environment, worker0 is the primary Tableau Server.
workerX.vizqlserver.procs# of processesNumber of VizQL servers.
workerX.vizqlserver.port9100Base port for the vizQL server on workerX.
workerX.wgserver.port8000Base port for the web application server on workerX.
workerX.wgserver.procs# of processorsNumber of web application server processes.