Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Tags: cnxtech/servo

Tags

v0.12.28

Toggle v0.12.28's commit message
add a checkArgument that avoids varargs (Netflix#465)

Avoids varargs and the allocation overhead of creating a string array.

During application profiling found that some allocation can be avoided
if we explicitly invoke the checkArgument method without varargs

Allocation profiling via async-profiler:

```
--- 1451114625215846968 bytes (21.40%), 10371 samples
  [ 0] java.lang.String[]
  [ 1] com.netflix.servo.tag.BasicTag.checkNotEmpty
  [ 2] com.netflix.servo.tag.BasicTag.<init>
  [ 3] com.netflix.servo.tag.Tags.newTag
  [ 4] com.netflix.servo.monitor.MonitorConfig$Builder.withTag
```

v0.12.27

Toggle v0.12.27's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
do not warn if global registry used for context (Netflix#463)

If the Spectator global registry is used for the SpectatorContext,
then do not log a warning. In some legacy apps the context must
be set early to the global registry to avoid missing some metrics.
It can then be overwritten by the primary registry after it has
been created later in the startup process.

v0.12.26

Toggle v0.12.26's commit message
warn if SpectatorContext registry is overwritten (Netflix#458)

Adds a warning level log message if the registry used with
the SpectatorContext is overwritten. This should help with
debugging cases where Servo metrics are not being reported
properly because of initialization bugs in the application.

v0.12.25

Toggle v0.12.25's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
avoid mem leak for improper use of registerObject (Netflix#451)

Calling `Monitors.registerObject` with a monitor such as
a `BasicCounter` instance will register an empty composite
monitor with an id like `default:class=BasicCounter`. When
using the spectator integration this would result is a
memory leak because it needs to track the instances to be
able to aggregate the results.

This change updates the registration to remove any previous
copies and overwrite which is the default for servo. It also
double checks if it is an empty basic composite and just
ignores those since they will never have any monitors to
collect.

It is a bit difficult to test without a bunch of reflection
to dig into the guts of the meter state. I did reproduce in
a debugger using the following test case and confirm the
state is no longer growing:

```java
@test
public void testBasicCounterLoop() {
  for (int i = 0; i < 1000; ++i) {
    BasicCounter c = new BasicCounter(CONFIG);
    Monitors.registerObject(c);
    c.increment();
  }
  assertEquals(1000, registry.counter(ID).count());
}
```

v0.12.24

Toggle v0.12.24's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
base StatsMonitor expiration on writes (Netflix#450)

Before it was using calls to `getMonitors` to update the
last used time. That method will not get called when
delegating to Spectator and thus it will always expire
15 minutes after registration and never come back.

This changes the last used time to get updated when
values are recorded rather than when they are read using
`getMonitors`.

v0.12.23

Toggle v0.12.23's commit message
v0.12.23

Fixes in the delegation to spectator

* Registration tags

* Custom counters mapped to monotonic counters

v0.12.22

Toggle v0.12.22's commit message
v0.12.22

Delegate to spectator. The goal is to ease the transition of servo to
spectator at Netflix.

v0.12.21

Toggle v0.12.21's commit message
getting indiv props instead of reading all props (Netflix#444)

Secured applications may not have access to all system properties on
a server. Making this change to prevent reading all the system properties
and just read the properties that are required for creating the
DefaultMonitorRegistry instance.

Fixes Netflix#443.

v0.12.20

Toggle v0.12.20's commit message
v.0.12.20

Adds `DynamicGauge`

v0.12.19

Toggle v0.12.19's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
fix name of publish env variable (Netflix#440)

It was `BINTRAY_PUBLISH` in the travis config but the
script is checking `GRADLE_PUBLISH`.