epics’03 @ abingdon joimint-elog matthias clausen

17
EPICS’03 @ Abingdon JoiMint-eLog Matthias Clausen

Upload: erick-moore

Post on 13-Dec-2015

226 views

Category:

Documents


4 download

TRANSCRIPT

EPICS’03 @ Abingdon

JoiMint-eLog

Matthias Clausen

eLog and applications

Integration of eLog into applications (JoiMint)

Integration of JoiMint-MIME type and JoiMint config files into eLog

Requirements for our eLog approach – IExtended Functionality

Start from the existing eLog at DESY (TTF-Version)

Keeping the following ideas: Write messages, screen dumps and files through

central print queues (survive database downtimes) Use Web interface to add and to edit entries Use Servlets to retrieve data from the eLog and to

prepare Web displays.

Keep the XSLT style sheet to generate the Web edit page

Requirements for our eLog approach – IINew Functionality

Access and display of multiple eLog sources. Storing messages, screen dumps (JPG) and any kind of

files into an Oracle database. (Rather than XML files) Support links between messages Support for entries and screen dumps on Unix and

Windows (Windows: bypassing default PostScript printer driver)

Support command line entries. Write from applications

Web Client

eLogbooksServlet:ListEntry

Applet set:-eLogbook(s)-From time-To time-Shift

Text+

Images

Preparerequest

andinsertentry

invector

Read/Write

Classesextending LogBook

Read

Read

Read

Read

Text

Text

preparehtml

SortedVector Oracle

eLog

MKS-1MKS-2MKS-3MKS-4KRYO

.

.

OracleMKK

OracleIT-News

TINEEvents

XMLeLogsText

eLogbook: Mutiple Sources

Tomcat

ExampleThe Applet

Select one or more logbooks

Select defined time span

Type in from and to time

Select shift of ‚from‘ day

Entrer search string for:Author or

subject or text.

ExampleThe Web Page

The selected log books

Automatically entered text file

The selected from/ to time

Add new entry to your logbook

Select your default logbook

for entries

Entry with screen dump

Ascending / decending

Add new entry to your log book with

reference to this entry.

Goto the linked entry

Edit this entry (if allowed)

Statistical Information:(MySql local on Tomcat

Server)

Online help

Help

Web ClientTomcat

eLogbooksServlet:ModifyEntry

Html-Link:Activate ServletWith entry ID

Text+

Images

Preparerequest

andInsert

singleentry

invector

Read/Write

Classesextending LogBook

Read

Read

Read

Read

Text

Text

XMLTranslator

SingleEntry

OracleeLog

MKS-1MKS-2MKS-3MKS-4KRYO

.

.

OracleMKK

OracleIT-News

TINEEvents

XMLeLogsText

eLogbook Edit Display (read)

prepareXML

XSLStylesheet

Edit Buttondepending on

write access to source

Web Client

CenrtalOracleServer

PrinterSpooler

Read and Write from/to eLogbook

TomcatServletServletServletServlet

Central

Remote

print2oracle

Windows UnixCapone epicsmenu

(Tcl/tk)

Print to queue:oraclelog

Unix also allows to print tooraclelog through theCommand line interface(lpr –Poraclelog MKS-2:030612-12:00:00.txt)

IntegratingeLog <-> JoiMint

Create entries in JoiMint and save them into the eLog (Oracle)

Save JoiMint config files and/or config+data files into eLog

Create html links with the MIME type <JOI> and start JoiMint from eLog entries

Post Mortem Query Result

The selected log book is:

EVENT

http links with event

information

JoiMint config file: (dynamically created by servlet)<?xml version='1.0' encoding='UTF-8'?>

<config>

<X arg='100'/>

<Y arg='100'/>

<ScrollWidth arg='455'/>

<ScrollHeight arg='580'/>

<Width arg='480'/>

<Height arg='637'/>

<object type='JoiDataLogger'>

<Y arg='130'/>

<Width arg='425'/>

<Height arg='425'/>

<Link0 arg='KRYKSRV/SenderstrHEPHF/AusgangsstrIac/DATA'/>

<Link1 arg='KRYKSRV/SenderstrHEPHF/AusgangsstrIdc/DATA'/>

<Link2 arg='KRYKSRV/SenderstrHEPHF/AusgangsspgUdc/DATA'/>

<Link3 arg='KRYKSRV/SenderstrHEPHF/PulssperrePb/DATA'/>

<Event arg='Sat 14.06.2003 18:15:38'/>

</object>

<object type='JoiTextField'>

<Value arg='TINE Event Display'/>

<X arg='65'/>

<Y arg='5'/>

<Width arg='340'/>

<Height arg='40'/>

<FontStyle arg='Bold'/>

<FontSize arg='24'/>

<Alignment arg='Center'/>

</object>

From http-link to JoiMint DisplayLink:

http://krykpcn.desy.de:8080/examples/servlet/eLogbook.GetJoiEvent?

EVENT_N=1055491723&

ARCHIVE_S=KRYKSRV&

DEVICE_S=SenderstrHENL&

ID=EVENT:030613-10:08:43.joi

JoiMint config file: (dynamically created by servlet)<?xml version='1.0' encoding='UTF-8'?>

<config>

<X arg='100'/>

<Y arg='100'/>

<ScrollWidth arg='455'/>

<ScrollHeight arg='580'/>

<Width arg='480'/>

<Height arg='637'/>

<object type='JoiDataLogger'>

<Y arg='130'/>

<Width arg='425'/>

<Height arg='425'/>

<Link0 arg='KRYKSRV/SenderstrHEPHF/AusgangsstrIac/DATA'/>

<Link1 arg='KRYKSRV/SenderstrHEPHF/AusgangsstrIdc/DATA'/>

<Link2 arg='KRYKSRV/SenderstrHEPHF/AusgangsspgUdc/DATA'/>

<Link3 arg='KRYKSRV/SenderstrHEPHF/PulssperrePb/DATA'/>

<Event arg='Sat 14.06.2003 18:15:38'/>

</object>

<object type='JoiTextField'>

<Value arg='TINE Event Display'/>

<X arg='65'/>

<Y arg='5'/>

<Width arg='340'/>

<Height arg='40'/>

<FontStyle arg='Bold'/>

<FontSize arg='24'/>

<Alignment arg='Center'/>

</object>

TINEData

Web ClientTomcat

eLogbooks

Html-Link:Including:Archive-ServerDeviceServerEvent-Number

eLogbook Display JoiMint Event Displays

PrepareJoi-File

WithArchive-ServerDeviceServer

Event-Number

Send htmlImage

(Joi-File)With

MIMEHeader

Servlet:GetJoiEvent

JoiMint fileWith JOI

MIME type

StartMIME

Application

JoiMintServlet:

ListEntry

ReadLink

Information

Classesextending LogBook

Create html + Link Read

TINEEvents

Step I

Step II

Experience

Tomcat is just stable (no crashes ever) Oracle performance extremely good

Oracle server in computing center Performance @ DESY:

~ 50 images @ 100k ... Which implies 51 interactions with Oracle server ... in 2 sec

100 messages (text) from 5 log books (5 interactions) ... in 1-2 sec

(limits: 50 images / 100 messages configured in config class)

Plans - I:

Add alarms: Use existing alh-> Oracle functionality and write

alarms directly into Oracle Query alarms in eLog Create http links for:

JoiMint -> archive data JoiMint -> alarm settings ...

Plans - II:

Add support for cmlog (as source)

Line oriented view ( like JLAB eLog) Configure eLogs in (XML) config file Add eLog-sources by Java plugins