You can see in the console only warnings and errors
logged by SCR by just setting the "equinox.ds.print" property to "true" and "equinox.ds.debug" to "false". You will see
errors that occur in the activities of SCR like processing component
descriptions, calling activate/deactivate and bind/unbind methods of components,
etc.
You will probably not see
error in case any service reference is not resolved unless it is
caused by a bad component description.
Your suggestion about console
commads interacting with SCR is very interesting and might help a user to
investigate problems with his/her components. But unfortunately there are
no console commands for that purpose. Can you please open a bug about
that?
Regards,
Stoyan
----- Original Message -----
Sent: Tuesday, April 15, 2008 6:34
PM
Subject: RE: [equinox-dev] SCR debug
output
Hi
Stoyan,
Thanks very
much!
Its worth noting
that the flags didnt seem to be in the latest official release (3.3.2). I had
downloaded the 3.4M6a milestone build, though, and got the output you
described.
Regarding that
output, though, I still wasnt able to easily detect the kind of error I
frequently run into. The scenario is generally
like:
Service A references
many services (B, C, and D, etc.) all with 1..1 cardinality. Somewhere along
the way I figure out that Service A is not activating, but I have no idea
which reference is not being resolved (Lets say its B).
So, what I notice are
statements like DEBUG ## Resolver.resolveEligible(): reference Service B' of
component 'Service A' is not resolved that show up in many places as the
Resolver attempts to do its work.
However, these
messages are at a DEBUG level, and there are a lot of them. Additionally, I
suppose you could say that B may be just about to be introduced, so its not
really concerning that it doesnt exist yet. At any rate, theres a lot of
noise to sort through to try to understand why Service A is not
present.
So I am wondering if
you have any other suggestions for how to quickly identify this kind of
problem? Might there be console commands that can interact with the SCR to
list services that are left unactivated due to unresolved references? If not,
would it be a plausible thing for me to write?
Thanks,
-Mike
Furtak
THIS MESSAGE IS INTENDED FOR THE USE OF THE PERSON TO WHOM IT IS
ADDRESSED. IT MAY CONTAIN INFORMATION THAT IS PRIVILEGED, CONFIDENTIAL AND
EXEMPT FROM DISCLOSURE UNDER APPLICABLE LAW. If you are not the intended
recipient, your use of this message for any purpose is strictly prohibited. If
you have received this communication in error, please delete the message and
notify the sender so that we may correct our records.
From:
equinox-dev-bounces@xxxxxxxxxxx [mailto:equinox-dev-bounces@xxxxxxxxxxx]
On Behalf Of Stoyan
Boshev Sent: Tuesday, April
15, 2008 3:36 AM To:
equinox-dev@xxxxxxxxxxx Subject: Re: [equinox-dev] SCR debug
output
You can use these boolean system
properties:
equinox.ds.debug - Turns on/off debugging of SCR
equinox.ds.print - Specifies that logged entries
should be printed to the framework runtime console
equinox.ds.perf - Enables generating and printing logs about the
time performance of the operations executed by the SCR (Useful when the user
is interested in the time that is spent in the bind, activate, deactivate
methods of his components)
I would recommend you to use both equinox.ds.debug and
equinox.ds.print properties set to "true" because you will see the debug
messages printed in the console. If you turn on only the equinox.ds.debug
property, the debug messages will be sent only to the LogService if
available.
----- Original Message -----
Sent: Monday,
April 14, 2008 9:03 PM
Subject:
[equinox-dev] SCR debug output
Hi,
I frequently find
myself in a position of trying to debug why my declarative services are not
running. Is there debug output from the SCR that I could be taking advantage
of to help this process?
If so, what
combination of bundles and settings are required to see
it?
Thanks,
-Mike
Furtak
THIS MESSAGE IS INTENDED FOR
THE USE OF THE PERSON TO WHOM IT IS ADDRESSED. IT MAY CONTAIN INFORMATION
THAT IS PRIVILEGED, CONFIDENTIAL AND EXEMPT FROM DISCLOSURE UNDER APPLICABLE
LAW. If you are not the intended recipient, your use of this message for any
purpose is strictly prohibited. If you have received this communication in
error, please delete the message and notify the sender so that we may
correct our records.
__________ NOD32 3025 (20080414) Information
__________
This message was checked by NOD32 antivirus system. http://www.eset.com
_______________________________________________ equinox-dev
mailing list equinox-dev@xxxxxxxxxxx https://dev.eclipse.org/mailman/listinfo/equinox-dev
__________
NOD32 3025 (20080414) Information __________
This message was checked
by NOD32 antivirus
system. http://www.eset.com
__________
NOD32 3027 (20080415) Information __________
This message was checked
by NOD32 antivirus system. http://www.eset.com
_______________________________________________ equinox-dev mailing
list equinox-dev@xxxxxxxxxxx https://dev.eclipse.org/mailman/listinfo/equinox-dev
__________
NOD32 3027 (20080415) Information __________
This message was checked
by NOD32 antivirus system. http://www.eset.com
|