Historian Logging in TSE application

A customers of ours has an InTouch project with TSE and has configured Historian logging but it seams that alarms are logged 'x' times, as if each client writes alarms to Historian.

With the classic method through WWAlmDb it work correctly.

Do you have any suggestions on how to handle this?
Are there any settings or scripts to tell only the application in Console to log alarms?


Thanks

Parents
  • Hello Luca,

    You could go for a TagServer setup. Where you make a separate application that has the logging and the other applications look at this machine for their information:
    softwaresupportsp.aveva.com/

    An other option in a script would be using the GetNodeName() and TseGetClientNodeName() functions in InTouch.
    Check what Node the InTouch is running to decide if it needs to log or not.

    The only thing is: I don't know if there is a function to enable/disable the alarm/event logging...

  • I agree with Olav.

    The system tag $HistoricalLogging can be used to toggle historization of/off. 

    Disclaimer: I haven't tested this, but hypothetically one may be able to toggle this with an application startup script something like $HistoricalLogging = TseQueryRunningOnConsole() > 0; to ensure that only the console session performs historization.

  • Ok, Thanks Olav, Rickard.
    we chose to have 2 separate applications with and without historicization for Server and Clients.
    The $HistoricalLogging variable does not work for Historian Logging apparently.
    It would be interesting to provide a similar function or alternative methods for Historian Logging.
    Bye

Reply Children
  • Hi Luca, 

    The system tag $HistoricalLogging does work with historization to AVEVA Historian, but it seems that Alarms & Events keep being historized when $HistoricalLogging is set to False. I will ask R&D to look into that. 

    You can also essure that Alarms & Events are only raised by the Console application, just like toggling the historization flag you can also toggle $System.AlarmEnabled and addressing all Alarm Clients toward the console session alarm provider (see docs for details).