Usage Note 45442: Troubleshooting problems with publishing models for SAS® Real-Time Decision Manager (SAS Decision Services)
SAS Real-Time Decision Manager enables you to use models from the SAS® Model Manager in your decision campaigns. A step that is required in order to use these models is "publishing" the model(s) to the DataFlux® Federation Server. In order to troubleshoot a problem with distributing models, follow the instructions below:
Check the stored process server log for failures or errors in the model_update stored process.
For further information about stored process server logs and logging levels, see SAS Note 38596 "Log files that are useful when troubleshooting SAS® Stored Process Server problems and SAS® Solutions problems that are associated with this server".
Check that a data set is created or updated for each model that you publish.
Follow these steps to check that the data sets that are associated with the models are created or updated:
- Find the name of the library that contains the data sets:
- In SAS® Management Console, navigate to Application Management ► Configuration Manager ► SAS Application Infrastructure ► Decision Services Design Mid-Tier your_version.
- Right-click Decision Services Design Mid-Tier your_version and choose Properties.
- Click the Advanced tab.
- Note the value that is associated with the property policydesign.model.ds2.catalog. This value is the name of the library where the model data set is stored.
- Check the timestamps for the data sets that are created or updated when you publish. Ensure that these timestamps match the time and date when you published the models. There is one data set per model. The name of each model's data set matches the model ID. For further information about finding the model ID, see "Check the individual data set for each model", below.
- Find the location that is associated with the library:
- In SAS Management Console, navigate to Data Library Manager ► Libraries ► your_library.
- Right-click on your library and choose Properties.
- Click the Options tab. The path listed under Selected items on the right-hand side is the path where the data set is stored. In most cases, the library is SASDS.
- Once you know the path to the directory, examine the date modified for the files stored there. Compare these dates to the time and date that you attempted to publish models to the DataFlux Federation Server. Ensure that the correct number of data sets was modified at the expected timestamp.
C
heck the individual data set for each model (optional).
If you discover a problem that requires checking the data set for a particular model, follow the steps below.
- Find the model ID.
- In the SAS Management Console Folders tab, navigate to Shared Data ► Model Manager ► Publish ► Projects ► Design (or Engine).
- Select Design or Engine, depending on which repository you are using.
- Right-click on the name of your model in the right-hand pane and choose Properties.
- The string of numbers, letters, and hyphens in the Keywords text box is the model ID.
- The model ID is used to name the data set that is created when you publish the model. This data set resides in the library that is named in the policydesign.model.ds2.catalog property that you found above. The name of the data set does not exactly match the model ID, but the name incorporates most of the ID, as shown below.
Check permissions on the folders that are used for publishing.
- First, check the folder for the basecat catalog or schema for the DataFlux Federation Server. Find the location for the folder using these steps:
- In the SAS Management Console, navigate to the Folders tab.
- Navigate to System ► Applications ► SAS Decision Services ► Decision Services your_version. Click Decision Services your_version.
- In the right-hand pane, right-click Decision Services Server Config your_version and choose Properties.
- On the Configuration tab, scroll down to find the value that is associated with policyconfig.base.path. By default, the path is similar to the one below:
D:\SAS\DATA\FedServer\basecat
- Check that the sassrv user (or your equivalent) has full permissions for this directory and its subdirectories.
- Next, check the folders for the Metadata for both the Engine Server and the Design Server:
- On the same Configuration tab, scroll down to find the values for these two properties:
policyconfig.design.model.metadata.folder
policyconfig.engine.model.metadata.folder
By default, the paths are similar to the ones below:
D:\SAS\Config\Lev1\Applications\SASDecisionServicesServerConfig5.5\ModelMetadata\design
D:\SAS\Config\Lev1\Applications\SASDecisionServicesServerConfig5.5\ModelMetadata\engine
- Check that the sassrv user (or your equivalent) has full permissions for the directory two levels up from each of these two directories (the parent's parent).
- Next, check that the sassrv user (or your equivalent) has full permissions for all subdirectories of these two "grandparent" directories.
Check the library properties.
- When you define the library for publishing (SASDS or your equivalent), ensure that the library is pre-assigned.
- Also ensure that the library is assigned to the SASApp server, as shown below.
Check that the SAS Anonymous Web User account exists.
During your initial configuration, the SAS® Deployment Wizard can automatically create the SAS Anonymous Web User. This account is needed for the Model_Update WSDL to work. This "webanon" user is part of the BI Web Services User group, as shown below.
If this account does not exit, SAS returns the following error:
2011-11-10 15:18:14,940 [AWT-EventQueue-0] ERROR com.sas.rdm.plugins.rtdmgr.repository.PublishModelsAction -
<?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><soapenv:Fault
><faultcode>soapenv:Client</faultcode><faultstring xml:lang="en">A
'Client Authentication' type of exception occurred during execution of 'Products/SAS Decision
Services/model_update' service. The exception follows: No security context is
available.</faultstring><detail
xmlns:fault="http://support.sas.com/xml/namespace/biwebservices/webservicemaker-
9.2"><fault:Fault
code="1000"/></detail></soapenv:Fault></soapenv:Body>
</soapenv:Envelope>
Increase logging and check logs.
If the permissions for these directories are correct but you are still having difficulties, your model code might contain an error. Follow these steps to get additional information in the log messages for the model_update stored process.
- First, find the code for the model_update stored process.
- On the Folders tab of SAS Management Console, navigate to Products ► SAS Decision Services. Click SAS Decision Services.
- In the right-hand pane, right-click model_update and choose Properties.
- In the Execution tab, click Edit Source Code.
- DO NOT EDIT THE SOURCE CODE. Very carefully copy the source code and paste it in a Base SAS® session.
- Close the SAS Management Console dialog boxes without making any changes. Click Cancel in the Edit Source Code in Metadata dialog box. Click Cancel in the model_update Properties dialog box.
- Next, edit the source code in your Base SAS session to reflect your own environment.
- Attempt to run the model_update stored process in the Base SAS session.
- View the log messages and resolve any problems that are reported.
- When the code runs without an error or warning in the Base SAS log, check that data sets are created and updated in the location for policydesign.model.ds2.catalog, as described above.
Operating System and Release Information
SAS System | SAS Real-Time Decision Manager | Microsoft® Windows® for x64 | 5.41 | | | |
64-bit Enabled AIX | 5.41 | | | |
64-bit Enabled Solaris | 5.41 | | | |
HP-UX IPF | 5.41 | | | |
Linux for x64 | 5.41 | | | |
Solaris for x64 | 5.41 | | | |
*
For software releases that are not yet generally available, the Fixed
Release is the software release in which the problem is planned to be
fixed.
Date Modified: | 2012-08-10 13:52:37 |
Date Created: | 2012-01-20 12:04:00 |