Skip to main content

Hi,

Has anyone looked into logging to a Gibraltar Loupe logging service ?

My company is currently looking into creating a central logging facility for all our applications and services, and FME conversions are not exempt from this.

It may be converting normally generated FME logs, or preferably, logging directly inside the workspace, e.g. by using a PythonCaller or a a custom transformer.

Any insight on this issue is most welcome.

Cheers

 

Lars

I had a look at their website and I'm not 100% certain how this works.

One aspect seems to be the software itself logging issues. To do that would require functionality built into FME. So that's something you'd need to contact our support team about and have them file an enhancement request. I guess we'd need to build an integration capability so you entered your Loupe info and FME would write information to it. Not sure how likely it is that we'd do that - and Loupe says it supports all .net application and I don't know if FME qualifies - but we won't know unless you ask!

You could also file it as an idea on this site to see if others are interested.

As for building the logging into individual workspaces - well I don't see that their API supports Python. I think what you'd need to do is create an FME Objects application in .net. You would probably have that application set up the logging with the Loupe API, then call your FME workspace using the iFMEWorkspaceRunner method in the FME Objects API.

It seems a bit of an effort, but I guess you could set up an application that accepted a workspace name as an input parameter. That way - once set up - you just run all your translations that way, instead of through Workbench. And - who knows? - you might be able to market that application to other FME users who wanted the same logging capabilities.

That would log any issues in general, but it wouldn't let you log
custom messages on a transformer-by-transformer basis. To do that you'd
need to write a Loupe application and call it from the SystemCaller I
imagine.

Hope that helps. If you do need more assistance please do contact safe.com/support - there will be experts there who know more than I do about FME Objects - and you could sign up for our developer program, which would get you some assistance in using FME Objects I believe.

Regards

Mark


I just revisited this issue, and seem to have found a solution.

Creating a transformer in C++/FMEObjects was never really an option, so I've been on the lookout for a more "python" solution. And it seems that the PythonNet module makes it possible. The latest version is 2.3.0.

The trick is to load the "Gibraltar.Agent.dll" dynamically, and import the "Log" object from it. From there it's rather straight forward.

If anyone is interested, I can upload a test script to run (e.g. in PyCharm).

However, I've yet to figure out, how to make multiple transformers use a single logging session. Logging each transformer as a separate logging session seems to be a bit counter-productive, logging should be per workspace/run.

If I solve the above session issue, I'll post a mention of it here.

Cheers


Reply