Solved

Emailer isn't supported in FME Server?


Badge +1

Hi all,

I have a workspace that has an Emailer transformer where the Email's body is the customed HTML_content. This works fine with FME desktop 2020.2 (build 20787-win64) but failed with FME Server 2020.1.1. (build 20608-win64).

The error message was:

Python Exception <ModuleNotFoundError>: No module named 'fmepy_emailer'

I wonder if this is because of:

  • incompatibility between 2 versions (2020.2 vs 2020.1.1)?
  • or is it because the FME server doesn't support the Emailer transformer?

At the moment, upgrading FME Server isn't an option for me.

I have tried the Email function in the Automations of FME Server but it doesn't have an option for me to include HTML content in the Email's body but rather an HTML attachment - this means every time I will have to click the attachment and it will be opened in a browser.

Any suggestion? Many thanks!

 

icon

Best answer by hollyatsafe 5 February 2021, 01:06

View original

12 replies

Userlevel 5
Badge +25

The Emailer in general works just fine on FME Server (at least mine was this morning) so there's probably another reason. Some things you can check:

  • You mention your FME Desktop is newer than your FME Server. This may very well be the cause, if it's at all possible we always recommend to keep both on the same version/build. You can download an older FME Desktop here and install it side by side with your newer one (make sure to point it to a separate installation folder)
  • Check the logfile for that job and see if you get any error messages. If so, please post them here, it'll give us more of a change to figure out what's going on.
Badge +2

Hi @ninixink​ ,

 

I also just wanted to mention that it is possible to set the Email Action in Automations to use the HTML in the email body. You'd need to reauthor your workflow slightly to include an Automation Writer, this would allow you to parse your html_content attribute out from the workspace into the Automation Email Body, and you'd need to specify the Email Format parameter at HTML.

 

That being said I agree with @Hans van der Maarel​ that the Emailer should work, so please share your log file and this will help us try and identify the problem.

Badge +1

Thanks so much @Hans van der Maarel​ and @hollyatsafe​. I've run the process again and here is the error message:

Python Exception <ModuleNotFoundError>: No module named 'fmepy_emailer'

The workplace was set up with Python 3.6+. I'll try to make the Emailer works by installing FME Deskstop 2020.1.1. If no luck I'll set up again the Email action in Automations.

 

Badge +1

The Emailer in general works just fine on FME Server (at least mine was this morning) so there's probably another reason. Some things you can check:

  • You mention your FME Desktop is newer than your FME Server. This may very well be the cause, if it's at all possible we always recommend to keep both on the same version/build. You can download an older FME Desktop here and install it side by side with your newer one (make sure to point it to a separate installation folder)
  • Check the logfile for that job and see if you get any error messages. If so, please post them here, it'll give us more of a change to figure out what's going on.

Thanks @Hans van der Maarel​ . I installed FME Desktop 2020.1.1 as your suggestion and as I opened the workplace in FME Workbench 2020.1.1, it asked me to reinstall Emailer package and then failed with this message:

An error occurred while installing package 'C:\\Users\\myusername\\AppData\\Roaming\\Safe Software\\FME\\Packages\\20614-win64\\PackageFiles\\safe.emailer':

An error occurred while installing Python package with 'pip install --force-reinstall --no-deps --no-index --find-links C:\\Users\\myusername\\AppData\\Roaming\\Safe Software\\FME\\Packages\\20614-win64\\PackageFiles\\safe.emailer\\python --target C:\\Users\\myusername\\AppData\\Roaming\\Safe Software\\FME\\Packages\\20614-win64\\python\\safe.emailer --upgrade --no-compile fme-emailer' : Process crashed

Badge +2

Thanks so much @Hans van der Maarel​ and @hollyatsafe​. I've run the process again and here is the error message:

Python Exception <ModuleNotFoundError>: No module named 'fmepy_emailer'

The workplace was set up with Python 3.6+. I'll try to make the Emailer works by installing FME Deskstop 2020.1.1. If no luck I'll set up again the Email action in Automations.

 

Thanks for sharing @ninixink​ . The Emailer transformer is a package transformer that must be published from FME Desktop along with the Workbench. Then the first time the job is run these package files are installed on FME Server. This error message indicates that the Emailer package failed to install. Can you confirm that you uploaded the package during publishing? It would have looked like:

Screen Shot 2021-01-20 at 4.36.09 PMAfter installing FME Desktop 2020.1.1, if this is still not working I'd recommend that you open a support case, as there may be some problem with the package being imported into FME Server.

Badge +1

Thanks for sharing @ninixink​ . The Emailer transformer is a package transformer that must be published from FME Desktop along with the Workbench. Then the first time the job is run these package files are installed on FME Server. This error message indicates that the Emailer package failed to install. Can you confirm that you uploaded the package during publishing? It would have looked like:

Screen Shot 2021-01-20 at 4.36.09 PMAfter installing FME Desktop 2020.1.1, if this is still not working I'd recommend that you open a support case, as there may be some problem with the package being imported into FME Server.

Thanks @hollyatsafe​ . I have never actually published from the Desktop but rather upload it when I was in the FME Server, this way seems to be better since I feel like I have more controls of what packages are published. Thanks :)

Unfortunately, I have tried to publish from FME Deskstop 2020.1.1 and made sure the Emailer package selected to upload, I still had the same error when running the workspace in FME Server.

 

123 2021-1-22 09:57:45 | Python Exception <ImportError>: No module named fmepy_emailer

124 2021-1-22 09:57:45 | PythonFactory failed to load python symbol `fmepy_emailer.Emailer'

125 2021-1-22 09:57:45 | Emailer_3_CALLER (PythonFactory): PythonFactory failed to close properly

126 2021-1-22 09:57:45 | Emailer_3_CALLER (PythonFactory): A fatal error has occurred. Check the logfile above for details

127 2021-1-22 09:57:46 | Emailer_3_CALLER (PythonFactory): A fatal error has occurred. Check the logfile above for details

128 2021-1-22 09:57:46 | A fatal error has occurred. Check the logfile above for details

 

I'll open a support case as suggested. Cheers

Badge +2

Thanks for sharing @ninixink​ . The Emailer transformer is a package transformer that must be published from FME Desktop along with the Workbench. Then the first time the job is run these package files are installed on FME Server. This error message indicates that the Emailer package failed to install. Can you confirm that you uploaded the package during publishing? It would have looked like:

Screen Shot 2021-01-20 at 4.36.09 PMAfter installing FME Desktop 2020.1.1, if this is still not working I'd recommend that you open a support case, as there may be some problem with the package being imported into FME Server.

Hi @ninixink​ ,

 

Thanks for checking that, The publisher will place the .fpkg file in Resources > Engine. Then the first time a job is run that contains this package transformer it should extract the package and import all the files into Resources > Engine >Packages. My first suspicion would be that there is a permissions related issue and the account running the FME Engine service is unable to write to this location. I'll keep an eye out for the case if you want to put 'ATTN Holly' in the subject and we can set up a screen share to work through this.

Badge +1

Thanks for sharing @ninixink​ . The Emailer transformer is a package transformer that must be published from FME Desktop along with the Workbench. Then the first time the job is run these package files are installed on FME Server. This error message indicates that the Emailer package failed to install. Can you confirm that you uploaded the package during publishing? It would have looked like:

Screen Shot 2021-01-20 at 4.36.09 PMAfter installing FME Desktop 2020.1.1, if this is still not working I'd recommend that you open a support case, as there may be some problem with the package being imported into FME Server.

Hi @hollyatsafe, thanks so much for your offer​. I have looked into the package's files that you described Resources > Engine >Packages and found this This file was generated on 16/12/2020, I think this was when I tried to test with both Outlook and Gmail Emailer as Outlook didn't work at first for me.

Regarding permissions related issue, I've tried to change the FMEServerEngine user from Local System to my account in the Services.msc (in the FME Server machine) and I myself have admin rights with our FME Server. Properly it's worth mentioning that we installed our FME server on a remote machine.

 

Update: I have submitted this as support case. Ref. C648662

 

Badge +2

Thanks for sharing @ninixink​ . The Emailer transformer is a package transformer that must be published from FME Desktop along with the Workbench. Then the first time the job is run these package files are installed on FME Server. This error message indicates that the Emailer package failed to install. Can you confirm that you uploaded the package during publishing? It would have looked like:

Screen Shot 2021-01-20 at 4.36.09 PMAfter installing FME Desktop 2020.1.1, if this is still not working I'd recommend that you open a support case, as there may be some problem with the package being imported into FME Server.

Hi @ninixink​ ,

 

Thank you for creating a case and jumping on a call with me. I just wanted to update this post with our resolution in case it may be helpful to other users.

 

When you first publish a package to FME Server the .fpkg file gets uploaded to Resources > Engine and the first time a job is run that contains this package transformer it should extract the package and import all the files into a series of subfolders within Resources > Engine >Packages. For the Emailer, a folder safe.emailer should be created within the packageFiles, python, transformers and resources folders. However in this case it was only present in packageFiles, since the package had only partially installed the first time around the workspace was complaining about missing python modules as they were in fact missing.

 

To resolve the issue we removed all references of the safe.emailer from any folders within Packages and then reran the workspace containing the Emailer transformer. This time the package was able to extract all the files successfully and the Emailer now works as expected.

 

 

Badge

Hi @hollyatsafe​,

Not really an answer but I have the same problem running the emailer on fme server 2021.1.3. Tried all the above but still: 'No module named 'fmepy_emailer'. Removing package, publising emailer package with workspace etc. Is there a workaround for running the emailer from the workspace? I had no problems with this in earlier fme server versions.

Userlevel 2
Badge +10

Hi @hollyatsafe​,

Not really an answer but I have the same problem running the emailer on fme server 2021.1.3. Tried all the above but still: 'No module named 'fmepy_emailer'. Removing package, publising emailer package with workspace etc. Is there a workaround for running the emailer from the workspace? I had no problems with this in earlier fme server versions.

Hi @ejmpost​, sorry to hear you're running into troubles with the emailer on FME Server. Thanks for going ahead and trying all the suggestions above. One more suggestion would be to check that your FME Desktop and Server are running the same version.

 

As for a temporary workaround, you could look at using the Emailer automation in FME Server. This article goes into more detail on the differences between the two: https://community.safe.com/s/article/sending-email-in-fme-fme-workbench-vs-fme-server

Badge +2

Hi @hollyatsafe​,

Not really an answer but I have the same problem running the emailer on fme server 2021.1.3. Tried all the above but still: 'No module named 'fmepy_emailer'. Removing package, publising emailer package with workspace etc. Is there a workaround for running the emailer from the workspace? I had no problems with this in earlier fme server versions.

Hi @ejmpost​ ,

If you're on the same version of FME Desktop and FME Server and you'd prefer not to use Automations in your workflow then please submit a case to support so we can help you troubleshoot this error. I'm not aware of any issues with the Emailer transformer in this version of FME Server.

Reply