Hi,
A while ago our core facility ran into problems with obtaining run statistics for Illumina (HiSeq and MiSeq) runs.
Our desire was to integrate it into another project where I am contributing to an opensource LIMS system called GNomEx (http://sourceforge.net/projects/gnomex/). We also needed it to gather statistics on the command-line without any difficult integration or scripting.
Using this approach, I was able to obtain sequence statistics for all the available runs, with a variable scanning interval.
Several features of Metrix:
Each run directory will get a status code (state) appointed.
Please note that this is the first version and does not yet support full parsing of all InterOp files.
Also, I have left the client side 'open' for users to implement their most preferred way.
Its quite easy if you're familiar with Java!
The repository is available on GitHub
I applaud all feedback, bug reports and input! They are very welcome.
Good luck!
Bernd
A while ago our core facility ran into problems with obtaining run statistics for Illumina (HiSeq and MiSeq) runs.
Our desire was to integrate it into another project where I am contributing to an opensource LIMS system called GNomEx (http://sourceforge.net/projects/gnomex/). We also needed it to gather statistics on the command-line without any difficult integration or scripting.
Using this approach, I was able to obtain sequence statistics for all the available runs, with a variable scanning interval.
Several features of Metrix:
- Java 7.0 Watcher Service
- Runs as a server daemon
- Most used statistics (Current cycle, (pre-)phasing e.g...) are gathered. Other Metrics will be added in the future or can be implemented yourself.
- All information of a single run is stored in an object
- Collections of Run Summaries (Summary) can be stored in an SummaryCollection object
- RunInfo.xml parsed and stored
- Summary and SummaryCollection are accessible from a client interface in several formats (XML and POJO)
- New, current and past runs are detected automatically and classified with their respective state.
- Open source (GPL v.3) on GitHub
- Server / Client communication is performed using a Metrix Command object where all details of the communication are stored.
- Several client modes available:
- Mode: "POLLED" - Command is executed every XYZ milliseconds; minimum of 10000ms)
- Mode: "GET" - Command is executed once
Each run directory will get a status code (state) appointed.
- [1] Running
- [2] Finished
- [3] Hanging with errors
- [4] Flowcell needs turning
- [5] Initializing
- MiSeq runs takes 5 cycles before statistics are detected from state 5 to state 1.
- HiSeq runs take 4 - 6 cycles before InterOp statistics are detected and set from state 5 to state 1.
Please note that this is the first version and does not yet support full parsing of all InterOp files.
Also, I have left the client side 'open' for users to implement their most preferred way.
Its quite easy if you're familiar with Java!
The repository is available on GitHub
I applaud all feedback, bug reports and input! They are very welcome.
Good luck!
Bernd
Comment