|
xml2databasexml2database is a flexible, configurable and powerful converter very large amounts (>GByte) of XML data for fast import into databases. A dynamic configuration language allows fast adaption of counters and measurements mapped to database tables. Changes in the naming of XML attributes can be captured within the converter, so that a once-established database tables does not need to be changed if an attribute name has changed on the XML-generating subsystem. This saves money and your time! You have tested the demo version and would like to purchase a production version of the software or need adjustments, tests at on your reference system or modification configuration files for your individual database tables? We like to help you: Free demo software/documentation download:Linux Version X86:OpenSolaris 10 / X86 - distributions Paket: xml2database-OpenSolaris-V0.8.1.tar.gz OpenSolaris 10 / X86 - demo binary only: xml2database-OpenSolaris-V0.8.1-demo linux / X86 - distributions Paket: xml2database-linux-V0.8.1.tar.gz linux / X86 - demo binary only: xml2database-linux-V0.8.1-demo Handbook: xml2database_user_handbook.pdf Used technologies:
Available platforms:
Installation
Test run
Example configuration:# # Software testing # INPUTFILE "^TESTDATA.*\.xml$" { # data source GENERATES MEASUREMENT { MEASUREMENTNAME "DEVELOPMENT_TEST1" # name of the measurement GRANULARITY 15MIN # "15MIN" -> "Q" # "24H" -> "D" # "EVENT" -> "E" MATCH { NEEDS "datarecord"->"shell" } COLUMNS { UTC_FILESTAMP "UTCTIME" # UTC from filename REGEXPATTRIBUTE( "Port", "Port ([0-9]*)/[0-9]*/[0-9]*" ) "Shelf" # extract shelf REGEXPATTRIBUTE( "Port", "Port [0-9]*/([0-9]*)/[0-9]*" ) "Slot" # extract slot REGEXPATTRIBUTE( "Port", "Port [0-9]*/[0-9]*/([0-9]*)" ) "Port" # extract port CONVERTATTRIBUTE MS_TO_UTC( "timeCaptured" ) "UTCTIME1" # UTC time from milliseconds CONVERTATTRIBUTE MS_TO_LOCAL( "timeCaptured" ) "LTIME1" # localtime from milliseconds CONVERTATTRIBUTE STRING_TO_UTC( "StartTime", "yyyy'-'MM'-'dd'T'hh':'mm':'ss'Z'" ) "ISO_UTC_TIME" # UTC time CONVERTATTRIBUTE STRING_TO_LOCAL( "StartTime", "yyyy'-'MM'-'dd'T'hh':'mm':'ss'Z'" ) "ISO_LOCAL_TIME" # local time ATTRIBUTE( "receivedTotalOctets" ) "RECEIVED" # ATTRIBUTE( "transmittedTotalOctets" ) "TRANSMITTED" # BOOLATTRIBUTE( "bits"->"subattribute", "active" ) "IS_ACTIVE" # 1 = if "active" else 0 ARGATTRIBUTE( "attributeWithArgs", "arg1" ) "ARGATTR1" ARGATTRIBUTE( "attributeWithArgs", "arg3" ) "ARGATTR3" } } GENERATES MEASUREMENT { MEASUREMENTNAME "DEVELOPMENT_TEST2" # Name der Messung GRANULARITY 24H # "15MIN" -> "Q" # "24H" -> "D" # "EVENT" -> "E" MATCH { NEEDS "data"->"shell"->"bits" } COLUMNS { UTC_FILESTAMP "UTCTIME" # UTC from filename REGEXPATTRIBUTE( "Port", "Port ([0-9]*)/[0-9]*/[0-9]*" ) "Shelf" # extract shelf REGEXPATTRIBUTE( "Port", "Port [0-9]*/([0-9]*)/[0-9]*" ) "Slot" # extract slot REGEXPATTRIBUTE( "Port", "Port [0-9]*/[0-9]*/([0-9]*)" ) "Port" # extract port CONVERTATTRIBUTE MS_TO_UTC( "timeCaptured" ) "UTCTIME1" # UTC time from milliseconds CONVERTATTRIBUTE MS_TO_LOCAL( "timeCaptured" ) "LTIME1" # localtime from milliseconds CONVERTATTRIBUTE STRING_TO_UTC ( "ISO8601TIME", "yyyy'-'MM'-'dd'T'hh':'mm':'ss'Z'" ) "ISO_UTC_TIME" # UTC CONVERTATTRIBUTE STRING_TO_LOCAL( "ISO8601TIME", "yyyy'-'MM'-'dd'T'hh':'mm':'ss'Z'" ) "ISO_LOCAL_TIME" # localtime BOOLATTRIBUTE( "bits"->"subattribute", "active" ) "IS_ACTIVE" # 1 = if "active" else 0 ATTRIBUTE( "transmittedTotalOctets" ) "TRANSMITTED" # ATTRIBUTE( "receivedTotalOctets" ) "RECEIVED" # } } } |