Tool to access the PVSS database and write out some monitoring information. This tool is based on and inspired by a couple of other tools:

What this tool should be able to do

Contents of CoolDCSAna

Only listing the contents of COOLANA/PIXEL/DCS, they all have the same seven histograms:

SQL Documentation and HowTos

General CERN things on databases

Structure of PVSS database

Looking at the Database using GUI

Use this tool: http://pdv-download.web.cern.ch/pdv-download/

For more documentation see ClemensLange/PixelDCS/Documentation

Setting up Oracle environment

Documentation from: https://twiki.cern.ch/twiki/bin/view/PDBService/BasicConceptsReference

source /afs/cern.ch/project/oracle/script/setoraenv.sh

Libraries to include: http://oracle-documentation.web.cern.ch/oracle-documentation/10gr2doc/install.102/b15662/post_inst_task.htm#sthref388

Somehow like this:

$ORACLE_HOME/lib/libocci10.a
$ORACLE_HOME/lib/libocci10.so.10.1

Compilation commands

Example command (running commands given here: http://www.lorentzcenter.nl/awcourse/oracle/appdev.920/a96583/cciaadem.htm):

/usr/bin/g++ -c -I/afs/cern.ch/project/oracle/@sys/10203/rdbms/demo -I/afs/cern.ch/project/oracle/@sys/10203/rdbms/public -I/afs/cern.ch/project/oracle/@sys/10203/plsql/public -I/afs/cern.ch/project/oracle/@sys/10203/network/public occiblob.cpp -DLINUX -DORAX86_64 -D_GNU_SOURCE -D_LARGEFILE64_SOURCE=1 -D_LARGEFILE_SOURCE=1 -DSLTS_ENABLE -DSLMXMX_ENABLE -D_REENTRANT -DNS_THREADS -DLONG_IS_64 -fno-strict-aliasing -DSS_64BIT_SERVER

/usr/bin/g++ -L/afs/cern.ch/project/oracle/@sys/10203/lib/ -L/afs/cern.ch/project/oracle/@sys/10203/rdbms/lib/ -o occiblob occiblob.o -locci -lclntsh   `cat /afs/cern.ch/project/oracle/@sys/10203/lib/sysliblist` -ldl -lm  -lpthread

My command:

g++ -c -pthread -m64 -I/afs/cern.ch/sw/lcg/external/root/5.20.00/slc4_amd64_gcc34/root/include -DLINUX -DORAX86_64 -D_GNU_SOURCE -D_LARGEFILE64_SOURCE=1 -D_LARGEFILE_SOURCE=1 -DSLTS_ENABLE -DSLMXMX_ENABLE-D_REENTRANT -DNS_THREADS -DLONG_IS_64 -fno-strict-aliasing -DSS_64BIT_SERVER  -I. -I/afs/cern.ch/project/oracle/@sys/10203/rdbms/demo -I/afs/cern.ch/project/oracle/@sys/10203/rdbms/public/ -I/afs/cern.ch/project/oracle/@sys/10203/plsql/public -I/afs/cern.ch/project/oracle/@sys/10203/network/public  -c testOracle.cxx -o testOracle.o

g++ -L /afs/cern.ch/sw/lcg/external/root/5.20.00/slc4_amd64_gcc34/root/lib -lCore -lCint -lHist -lMatrix -lGpad -ldl -lGraf -lTree -lSQL -L/afs/cern.ch/project/oracle/@sys/10203/lib -L/afs/cern.ch/project/oracle/@sys/10203/rdbms/lib  -Locci testOracle.o -o testOracle -locci -lclntsh   `cat /afs/cern.ch/project/oracle/@sys/10203/lib/sysliblist` -ldl -lm -lpthread

Makefile

ROOTCFLAGS = $(shell root-config --cflags)
ROOTLIBS = -L $(ROOTSYS)/lib -lCore -lCint -lHist -lMatrix -lGpad -ldl -lGraf -lTree -lSQL
ROOTCINT = $(ROOTSYS)/bin/rootcint

CXX = g++
CPPFLAGS = $(ROOTCFLAGS)
LD = g++
LDFLAGS = $(ROOTLIBS)

# ORACLE = -L$(ORACLE_HOME)
# ORACLE = -L$(ORACLE_HOME) -lclntsh
INCLUDE_DIR=-I. -I$(ORACLE_HOME)/rdbms/demo -I$(ORACLE_HOME)/rdbms/public/ -I$(ORACLE_HOME)/plsql/public -I$(ORACLE_HOME)/network/public 
LIB_PATH=-L$(ORACLE_HOME)/lib -L$(ORACLE_HOME)/rdbms/lib 
FROMDEMO=-DLINUX -DORAX86_64 -D_GNU_SOURCE -D_LARGEFILE64_SOURCE=1 -D_LARGEFILE_SOURCE=1 -DSLTS_ENABLE -DSLMXMX_ENABLE-D_REENTRANT -DNS_THREADS -DLONG_IS_64 -fno-strict-aliasing -DSS_64BIT_SERVER 

testOracle: testOracle.o 
        @echo "generating testOracle"
        $(CXX) $(LDFLAGS) $(LIB_PATH) -Locci testOracle.o -o testOracle -locci -lclntsh   `cat $(ORACLE_HOME)/lib/sysliblist` -ldl -lm -lpthread 

testOracle.o: testOracle.cxx 
        @echo "generating testOracle.o"
        $(CXX) -c $(CPPFLAGS) $(FROMDEMO) $(INCLUDE_DIR) -c testOracle.cxx -o testOracle.o 

clean:
        rm -rf *.o testOracle


CategoryDCSProject

ATLAS: ClemensLange/PixelDCS/MonitorDCS (last edited 2010-02-11 13:38:40 by ClemensLange)