-
Notifications
You must be signed in to change notification settings - Fork 100
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Various import and logging fixes #2043
Conversation
The individual configuration files will need to be translated via the logback tools for this to be completed.
Especially when using symlinks, there's no need to use a heavy checksum. This may not be the ideal situation, i.e. requiring the user to choose. Perhaps the `FileTransfer` API could suggest an algorithm.
Similar to `--wait` for `bin/omero chgrp` and friends, setting `--minutes-wait` for the import process disconnects once the files have been transfered. "Disconnectin from..." is printed to the CLI and the process exits. Currently, the `ImportProcessPrx` is left open on the server and must be manually closed.
Import processes returned from: ``` bin/omero shell --login client.getStatefulServices() ``` previously had very opaque (UUID-based) names. This commit adds a readable string to them.
To re-claim resources left open with `--minutes_wait`, the new `--close_completed` option checks for any process **in the current session** and closes it. ``` $ bin/omero import -- --minutes_wait=0 ... ... Disconnecting from import process... $ bin/omero import -- --close_completed Done: f318cbda-d91d-4123-bef4-467e5c4393e4/e7c27250-ac59-4337-bb0f-efd6fdb47fbd-ManagedImportProcessI 1 service(s) processed ``` For closing in other sessions, it will be necessary to first find the sessions and join them.
Entry got removed by mistake.
Java processes are being explicitly given the OMERO_LOGFILE variable. Python processes make use of omero.util.LOG_DIR for choosing a location. Now this is configurable via `omero.logging.directory`.
The node logging configuration does not make use of the `${OMERO_*}` variables. Instead, these must be set manually in the etc/*.cfg files.
Closing due to a blocking problem with the IJ plugin that I neglected to test before opening. |
Re-opened to get into a build, note that the IJ plugin is broken in this branch. |
--depends-on ome/bioformats#876 |
this.absFile = absFile; | ||
config.put("log4j.appender.BASE.File", absFile); | ||
PropertyConfigurator.configure(config); | ||
LoggerContext context = (LoggerContext) org.slf4j.LoggerFactory.getILoggerFactory(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
To better handle the ClassCastException
from ome/bioformats#876 we might should put a try/finally
around this block and handle it as if the log file were not present, i.e. disable logging if someone is choosing a non-logback implementation in imagej/fiji.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Makes sense.
Editor from the artefacts on gretzky works fine (Mac OS X tested). |
Log gets created in the indicated place for Editor, Importer, Insight as expected. Mac OS X 10.8, artefacts from gretzky. |
When |
After multiple imports, it's now possible to wait for all of them to complete in a single operation. A while loop is started which continues until no import processes are found.
@pwalczysko : the previous commit should improve the |
Reads okay, except: what is the order of the commands here ? It is neither alphabetical nor according to importance. |
Further to the output of the |
Edited my
Still looks like too little of them. |
The lack of logs may be because the three DropBox has failed to start for some reason. You could check the status with |
@pwalczysko Do you have the logs
and in
|
I'm a little concerned with the log file location 5daac78 commit. On a fresh start I had:
I restarted and things were okay:
But the problem on the first start meant that the Python processes failed to start at all due to exceptions when trying to write to the log files. /cc @joshmoore |
After
|
@ximenesuk I will send you the master.err via e-mail. |
Thanks @pwalczysko looks like there is a problem creating some of log files when the server first starts and the log directory does not yet exist. This time I got
but restarting gave me all the logs. @joshmoore it looks like there is some sort of ordering problem but I'm not sure why that wouldn't already occur with the default |
Re: Log files: There is certainly an issue with the initialization of the log directory, as well as its use by diagnostics. However, if someone is trying to set up the system in this way, they will almost certainly have created the log directory first, so I wouldn't be too concerned. |
Re: |
Fair point @joshmoore I'm just too used having things done for me! |
New advanced help:
Thoughts, @pwalczysko ? |
@joshmoore: Looks nice. But is a |
Now I understand that these are independent options. What would be actually quite helpful then, is to have a second example, which would deal with |
Example added. |
(Sorry, pushed to my branch. @ximenesuk will have to push for the PR) |
I'm merging @jburel's PR so that this can be tested more widely on Monday in case I have some local problems. Removing the dependency on a Bio-Formats PR. |
Not sure how to test the last merge. If you want to go ahead and merge first, do it, I am happy, cos the comments start to be too long here now. |
Reverting to this PR before Insight merge. The Insight work to support the plug-in and changes to jars can be done as a separate PR against the main branch. Given the testing undertaken by @pwalczysko this PR may now be good to merge! |
Merging. There will be several more PRs to finalize this work. |
Various import and logging fixes
This PR involves several distinct parts so the review isn't very simple. For many of the features a local server is needed or beneficial. @joshmoore may have added additional test details below in the comments.
~/omero/log/omeroinsight.log
for Insight, Importer and Editor. If the config file,logback.xml
, is moved from the Insight config directory the clients should still start okay but without providing any logging.-- --debug=DEBUG
during import, you'll get upload status updates like2014-01-30 ... FILE_UPLOAD_BYTES uploaded: 0 of: 0 bytes (ETA: 0' 0")
--rebased-to #2080