-
Feature Request
-
Resolution: Done
-
Blocker
-
10.0.0.Beta2
-
None
When doing a :read-resource(include-runtime=true,recursive=true) this blows up. Debugging shows that to be because e.g. the resource /subsystem=jgroups/channel=ee/protocol=UDP contains metrics called things like
"timer.keep_alive_time" => { "type" => LONG, "description" => "Timeout in ms to remove idle threads from the timer pool", "expressions-allowed" => false, "nillable" => false, "access-type" => "metric", "storage" => "runtime" }, "timer.max_threads" => { "type" => INT, "description" => "Max thread pool size for the timer thread pool", "expressions-allowed" => false, "nillable" => false, "access-type" => "metric", "storage" => "runtime" }, "timer.min_threads" => { "type" => INT, "description" => "Minimum thread pool size for the timer thread pool", "expressions-allowed" => false, "nillable" => false, "access-type" => "metric", "storage" => "runtime" },
i.e. they have a dot in their name. So when the r-r handler wants to read the attributes it in effect tries to do the following demonstrated by CLI commands:
[standalone@localhost:9990 /] /subsystem=jgroups/channel=ee/protocol=UDP:read-attribute(name=timer timer.keep_alive_time timer.min_threads timer.rejection_policy timer.wheel_size timer_queue_size timer_threads timer.max_threads timer.queue_max_size timer.tick_time timer_class timer_tasks timer_type [standalone@localhost:9990 /] /subsystem=jgroups/channel=ee/protocol=UDP:read-attribute(name=timer.max_threads) { "outcome" => "failed", "failure-description" => "WFLYCTL0201: Unknown attribute 'timer'", "rolled-back" => true }
I see ReadResourceHandler has some stuff to extract the attribute name if 'extended syntax' is used. So we have two options:
1) Ban dots in metric/attribute names
2) Add a workaround to fall back. In other words if ReadAttributeHandler thinks extended syntax is being used, and cannot find the extracted 'timer' attribute, then try the full non-extracted name, e.g. timer.max_threads, and only then error.
- clones
-
WFCORE-910 Reading metrics with dots in their names blows up
- Resolved