Need advice about agent plugin design
by Steven North
I am trying to design an RHQ/JON agent plugin to manage a software
resource with the following characteristics:
- there is the software itself (the installation);
- there are a variable number of "bundles" of configuration information
about 250KB in size each which need to be read from and written to the
agent; and
- there are "log" files which can 10-50MB in size each which need to be
read from the agent.
I think I am pretty clear on how to handle the software itself--just
like any number of other agents.
I am not sure how to handle the configuration bundles and the large log
files.
We might want to have the RHQ/JON server manage different versions of
these configuration files and distribute them to multiple remote agents.
Is there some existing domain object that would handle the read/write
aspect of the configuration bundles (zip files)? Could the "package"
concept be used for these? Would we need to create a new domain object
on the server side for these bundles? If so, is there an example of
this kind of thing?
For the log files, I see some mention of the SupportFacet. Would this
be appropriate for retrieving large log files? Is there an example of this?
We expect to access the configuration bundles and the log files using
remote client operations because we have a separate GUI tool to
build/edit the configuration bundles and to correlate and analyze the
log files. Is there an example of using a remote client to pull files
from and push files to remote agents?
Thanks in advance for any advice you can give or examples you can point to.
Steve
10 years, 1 month
MeasurementUnits (EPOCH_MILLISECONDS, EPOCH_SECONDS)
by Jiri Kremser
Hi,
in plugin descriptor, there can be a metric definition with unit type "epoch_milliseconds" or "epoch_seconds" (rhq-configuration.xsd allows it). What kind of metric should could be represented by epoch_milliseconds? Shouldn't the exact time moments (what values epoch_milliseconds represent) be addressed rather by traits?
I am asking because the values of this type are not formatted (https://bugzilla.redhat.com/show_bug.cgi?id=857144).
I think these two unit types should be removed from MeasurementUnits and xml schema, however there might be some plugins out there using it, so what about deprecation? Are there any edge cases, when these unit types do make sense?
JK
10 years, 1 month
AS7 plugin: Hibernate Query Cache resource type
by Thomas Segismont
Hi everyone,
I fixed "Bug 1033130 - [AS7] Exception during discovery of Query Cache
resources of RHQ Server resource" this week.
So what? Well now if you inventory RHQ server resource you get more than
2000 query cache resources showing up. Which of course costs you CPU and
memory.
You can of course just ignore this resource type (via the admin pages).
So I was wondering: shouldn't we change such resource types to no longer
auto discover them but only allow manual add?
Opinions?
Thanks,
Thomas
10 years, 4 months
@Null / @NotNull
by Heiko W.Rupp
Hey,
as I just got bitten again by trusting on @NotNull:
We should decide if we want to keep those annotations and enforce them
or remove them. The way it is right now just creates confusion.
Personally I am for keeping + enforcing.
Perhaps there is a more official variant from a JSR than the Jetbrains
counterpart, so that tooling that uses JSR annotations (Findbugs?) can
work with them.
There may be libraries out there that do not honor @NotNull so that
we may need to change our code then:
Caused by: com.google.gwt.user.client.rpc.SerializationException: java.lang.NullPointerException
at com.google.gwt.user.server.rpc.impl.ServerSerializationStreamReader.deserialize(ServerSerializationStreamReader.java:691) [gwt-servlet-2.5.0.jar:]
[..]
Caused by: java.lang.NullPointerException
at org.rhq.core.domain.configuration.definition.ConfigurationDefinition.setName(ConfigurationDefinition.java:139) [
(this NPEd because I made a change to setName() -- but still the getter for the name also says @NotNull, and the
behavior that GWT is setting the name to null violates this contract on retrieval ).
Heiko
--
Reg. Adresse: Red Hat GmbH, Technopark II, Haus C,
Werner-von-Siemens-Ring 14, D-85630 Grasbrunn
Handelsregister: Amtsgericht München HRB 153243
Geschäftsführer: Charles Cachera, Michael Cunningham, Paul Hickey, Charlie Peters
10 years, 4 months
Evolution of the Hudson plugin for Jenkins
by Jérémie
> > Le 24/11/2013 18:44, Jérémie a écrit :
> > Hi all
> >
> > I would like to make compatible the Hundson plugin with Jenkins.
> > I already have a working prototype:
> >
https://github.com/jerr/jboss-rhq/commit/ea95ebcbf5bc4b5d19268ef888156684...
> >
> > Before creating a Bugzilla ticket I would like to have your opinion. Is
> > it better to create a new plugin or to modify the existing hudson plugin
> >
> > Thank you for your help.
> >
> >
> > Regards,
> > Jérémie
> >
> >
> > _______________________________________________
> > rhq-devel mailing list
> > rhq-devel at lists.fedorahosted.org
> > https://lists.fedorahosted.org/mailman/listinfo/rhq-devel
> >
>
> Hi Jérémie,
>
> Hudson/Jenkins are so similar that we should keep just one, I think.
>
> With respect to the changes you pushed on Github, here are my comments:
>
> * keep the server/service names in the plugin descriptors (for
> compatibility with existing resources)
>
> * change the HudsonDiscoveryComponent discovery class to give new server
> resources an appropriate name and description
>
> * add a new "server-type" read-only plugin configuration property to the
> server resource; its value will be set in HudsonDiscoveryComponent and
> will help to differentiate Jenkins and Hudson servers (you will no
> longer need to check that in child resource components).
>
> Thanks for making this plugin evolve!
>
> Cheers,
> Thomas
Hi Thomas,
Thank you for your comments, I'll try to go in that direction.
I created bugzilla a ticket
https://bugzilla.redhat.com/show_bug.cgi?id=1034459
Regards,
Jérémie.
10 years, 4 months
Adaptive VM sizing
by Heiko W.Rupp
Hey,
modern VMs (1.7, perhaps even later 1.6 versions) are able to reduce the heap size when they
find out that the big size is no longer needed.
See e.g. this screenshot from some jvisualvm monitoring of an agent (orange is total size):
This only works when the minimum heap size is defined lower than the max (or not at all).
So I think we should not use -Xms=A -Xmx=A .
--
Reg. Adresse: Red Hat GmbH, Technopark II, Haus C,
Werner-von-Siemens-Ring 14, D-85630 Grasbrunn
Handelsregister: Amtsgericht München HRB 153243
Geschäftsführer: Charles Cachera, Michael Cunningham, Paul Hickey, Charlie Peters
10 years, 4 months