Skip to main content

Desktop version 2020.2.0.0 Build 20787, FME Server version 2020.2 Build 20787.

 

When the workbench is run in Desktop, the result is:

> FMEServerNotifier: Sent notification to topic ... on FME Server

And the second workbench in FME Server gets triggered as expected.

 

However, when it is run in FME Server, the result is:

> FMEServerNotifier: Failed to send notification to topic ... on FME Server

>FMEServerNotifier: Reason - unable to connect to FME Server

 

Some things that have been attempted:

+ ensuring 64 bit desktop upload to 64 bit Server

+ using a different connection

+ trying to verify topic and connection credentials with admin person

+ verified the Topic can be run directly within FME Server, which triggers the other workbench correctly

+ Desktop and FME Server versions appear to be the same ie 2020

+ adjusted the python interpreter

+adjusted the Notifier's preceding transformer to remove excess rejected data, such that the input into the notifier is purely a single celled table containing the argument that needs to be fed in (ie Parameter -> Content = the attribute name)

+ run by two other physical users with different credentials. The workbench is understood to not be affected by the physical user, as the credentials are supposedly dictated by the connection and the security role assigned to the server "user" but we tried it anyways

 

As a result of some of these listed attempts, the error message is slightly more specific:

> FMEServerNotifier: Failed to send notification to topic ... on FME Server

> FMEServerNotifier: Reason - credentials for user ... are invalid

 

Another approach attempted was to use a FMEServerJobSubmitter. This also resulted in "unable to connect to FME server".

 

The second workbench I am trying to trigger is an existing workbench, circa 2015. It has transformers that are out-of-date (updateable). It also successfully triggers a third workbench in FME Server, but does so with a writer. It is undocumented, and dubious but it successfully triggers the third FME Server workbench. The only difference I can clearly see is the 'user' listed in FME Server is called 'admin', whereas when I run my workbench in FME Server, the user specified is my MS Windows system username. That first workbench run by me in FME Server is supposed to trigger the second pre-existing workbench then the second workbench triggers the third pre-existing workbench).

 

I have browsed Workarounds to Known Issues in FME 2020.x (safe.com), the suggested Workaround is 'If you use FME Desktop 2020 to notify an FME Server 2020 topic it will work.'

 

Unfortunately, the first workbench that i have created is invoked by a separate system API, which works fine. I assume it works because I supplied a new token to the App developer, along with the specific requirements of the parameters required. Triggering a Desktop workbench on the network via a separate API is not preferable.

 

Does the issue lie in user credentials/connection credentials as stated in the error messages, or is it really an issue in the topic requirements? eg token expiry or similar? Since I only have 'author' level access (not developer or admin level) privileges, it is difficult to troubleshoot, and requesting the help of internal IT administrators is more effective if i can point them in the correct direction. It is also relatively unreasonable to request a server reset, or validating Server client libraries etc without certainty as suggested in FME Server Troubleshooting: Job Runs on Workbench, but not FME Server (safe.com) . I have already consumed the time of two administrators without much luck. Or is this a bug that cannot be resolved without using less-than-preferable methods? I'm quite new to FME Server, so apologies if I'm not using the correct FME ecosystem lingo or misunderstanding of functionality.

 

Cheers in advance to anyone that has any suggestions,

Joe

 

Not a solution yet per-se, but I have made an internal IT request for an administrator to try some of these suggestions; FME Server Connections Runtime Error: Unauthorized request by user due to lack of proper permissions (safe.com)


Make sure that the connection (host name, port, etc) and authorization (username, password) are correct when running on FME Server. Are you using a web connection for these transformers, or are you using embedded credentials? Perhaps try both.

For what it's worth, I've been using both the FMEServerNotifier and the FMEServerJobSubmitter for many years and I've never had this type of issue.


Make sure that the connection (host name, port, etc) and authorization (username, password) are correct when running on FME Server. Are you using a web connection for these transformers, or are you using embedded credentials? Perhaps try both.

For what it's worth, I've been using both the FMEServerNotifier and the FMEServerJobSubmitter for many years and I've never had this type of issue.

Thanks David,

The transformer is using a web connection. I believe there is a designated user, with designated group, and permissions applied to the group. These were set up by someone else several years ago. A current administrator is confident the authorization is correct. I did try to embed the connection parameters while trouble shooting. I don't have the result documented, but it didn't seem to make much difference.

 

I have a current work-around that seems to work in FME Server. Instead of using a FMEServerJobSubmitter or FMEServerNotifier in the workspace, the last object in the workspace is now a writer that writes the topic string to a text file in a restricted network location. Then a new Topic, Subscription, and Publication was created for this new workspace. The Publication is a Directory Watch with a 1 minute Poll Interval. When the text file gets updated ad-hoc by the new workspace, the second pre-existing workspace is successfully triggered.

 

It's not elegant, but it seems to work..


Reply