Skip to content

app/peerinfo: add nickname field to peerinfo protocol#3428

Merged
obol-bulldozer[bot] merged 12 commits intomainfrom
diogo/nickname-peerinfo
Jan 8, 2025
Merged

app/peerinfo: add nickname field to peerinfo protocol#3428
obol-bulldozer[bot] merged 12 commits intomainfrom
diogo/nickname-peerinfo

Conversation

@DiogoSantoss
Copy link
Contributor

Add nickname flag to run command, exchange nicknames using peerinfo protocol and create nickname metric to display on Grafana.

Preview:
Screenshot from 2024-12-17 09-11-26

category: feature
ticket: #1655

@DiogoSantoss DiogoSantoss requested a review from pinebit December 17, 2024 09:57
@DiogoSantoss DiogoSantoss changed the title app/peerinfo: Add nickname field to peerinfo protocol app/peerinfo: add nickname field to peerinfo protocol Dec 17, 2024
@gsora
Copy link
Contributor

gsora commented Dec 17, 2024

Do we need to handle the case in which two or more peer have the same nickname?

@DiogoSantoss
Copy link
Contributor Author

We probably should, just not sure what to do in that case. We could change our own by adding some suffix to the nickname. I don't know if we consider malicious nodes in this case.

@pinebit
Copy link
Collaborator

pinebit commented Dec 17, 2024

Do we need to handle the case in which two or more peer have the same nickname?

I think we can't do much about this.. just allow them to do that.

@codecov
Copy link

codecov bot commented Dec 17, 2024

Codecov Report

Attention: Patch coverage is 61.76471% with 13 lines in your changes missing coverage. Please review.

Project coverage is 56.94%. Comparing base (802e922) to head (9b9ae64).
Report is 6 commits behind head on main.

Files with missing lines Patch % Lines
app/app.go 0.00% 6 Missing ⚠️
app/peerinfo/peerinfo.go 82.35% 3 Missing ⚠️
cmd/run.go 25.00% 2 Missing and 1 partial ⚠️
app/peerinfo/peerinfopb/v1/peerinfo.pb.go 80.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #3428      +/-   ##
==========================================
+ Coverage   56.91%   56.94%   +0.02%     
==========================================
  Files         218      218              
  Lines       32390    32416      +26     
==========================================
+ Hits        18435    18458      +23     
- Misses      12063    12065       +2     
- Partials     1892     1893       +1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

DiogoSantoss and others added 6 commits January 6, 2025 15:29
Co-authored-by: Kaloyan Tanev <24719519+KaloyanTanev@users.noreply.github.com>
Bump linter

category: feature
ticket: none
Implement a way to provide eth2wrap with two classes of beacon nodes addresses: standard and fallback beacon nodes.

When one of the multi BN calls fails, eth2wrap wrappers will try to get an available fallback BN from a list and re-do the call on that.

If no fallback BNs is specified, return the original error.

If the fallback BN call fails, return fallback error instead.

This PR firstly introduces concepts and code, will introduce CLI parameters and initialization code later.

category: feature
ticket: #3328
Bump protobuf to latest version

category: misc
ticket: none
#3420)

Bumps [go.opentelemetry.io/otel/trace](https://github.com/open-telemetry/opentelemetry-go) from 1.32.0 to 1.33.0.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/open-telemetry/opentelemetry-go/blob/main/CHANGELOG.md">go.opentelemetry.io/otel/trace's changelog</a>.</em></p>
<blockquote>
<h2>[1.33.0/0.55.0/0.9.0/0.0.12] 2024-12-12</h2>
<h3>Added</h3>
<ul>
<li>Add <code>Reset</code> method to <code>SpanRecorder</code> in <code>go.opentelemetry.io/otel/sdk/trace/tracetest</code>. (<a href="https://redirect.github.com/open-telemetry/opentelemetry-go/issues/5994">#5994</a>)</li>
<li>Add <code>EnabledInstrument</code> interface in <code>go.opentelemetry.io/otel/sdk/metric/internal/x</code>.
This is an experimental interface that is implemented by synchronous instruments provided by <code>go.opentelemetry.io/otel/sdk/metric</code>.
Users can use it to avoid performing computationally expensive operations when recording measurements.
It does not fall within the scope of the OpenTelemetry Go versioning and stability <a href="https://github.com/open-telemetry/opentelemetry-go/blob/main/VERSIONING.md">policy</a> and it may be changed in backwards incompatible ways or removed in feature releases. (<a href="https://redirect.github.com/open-telemetry/opentelemetry-go/issues/6016">#6016</a>)</li>
</ul>
<h3>Changed</h3>
<ul>
<li>The default global API now supports full auto-instrumentation from the <code>go.opentelemetry.io/auto</code> package.
See that package for more information. (<a href="https://redirect.github.com/open-telemetry/opentelemetry-go/issues/5920">#5920</a>)</li>
<li>Propagate non-retryable error messages to client in <code>go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp</code>. (<a href="https://redirect.github.com/open-telemetry/opentelemetry-go/issues/5929">#5929</a>)</li>
<li>Propagate non-retryable error messages to client in <code>go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp</code>. (<a href="https://redirect.github.com/open-telemetry/opentelemetry-go/issues/5929">#5929</a>)</li>
<li>Propagate non-retryable error messages to client in <code>go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp</code>. (<a href="https://redirect.github.com/open-telemetry/opentelemetry-go/issues/5929">#5929</a>)</li>
<li>Performance improvements for attribute value <code>AsStringSlice</code>, <code>AsFloat64Slice</code>, <code>AsInt64Slice</code>, <code>AsBoolSlice</code>. (<a href="https://redirect.github.com/open-telemetry/opentelemetry-go/issues/6011">#6011</a>)</li>
<li>Change <code>EnabledParameters</code> to have a <code>Severity</code> field instead of a getter and setter in <code>go.opentelemetry.io/otel/log</code>. (<a href="https://redirect.github.com/open-telemetry/opentelemetry-go/issues/6009">#6009</a>)</li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Fix inconsistent request body closing in <code>go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp</code>. (<a href="https://redirect.github.com/open-telemetry/opentelemetry-go/issues/5954">#5954</a>)</li>
<li>Fix inconsistent request body closing in <code>go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp</code>. (<a href="https://redirect.github.com/open-telemetry/opentelemetry-go/issues/5954">#5954</a>)</li>
<li>Fix inconsistent request body closing in <code>go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp</code>. (<a href="https://redirect.github.com/open-telemetry/opentelemetry-go/issues/5954">#5954</a>)</li>
<li>Fix invalid exemplar keys in <code>go.opentelemetry.io/otel/exporters/prometheus</code>. (<a href="https://redirect.github.com/open-telemetry/opentelemetry-go/issues/5995">#5995</a>)</li>
<li>Fix attribute value truncation in <code>go.opentelemetry.io/otel/sdk/trace</code>. (<a href="https://redirect.github.com/open-telemetry/opentelemetry-go/issues/5997">#5997</a>)</li>
<li>Fix attribute value truncation in <code>go.opentelemetry.io/otel/sdk/log</code>. (<a href="https://redirect.github.com/open-telemetry/opentelemetry-go/issues/6032">#6032</a>)</li>
</ul>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/open-telemetry/opentelemetry-go/commit/8c38f80ec37ca5f5ef037c6b19997764926ba049"><code>8c38f80</code></a> Release v1.33.0 (<a href="https://redirect.github.com/open-telemetry/opentelemetry-go/issues/6035">#6035</a>)</li>
<li><a href="https://github.com/open-telemetry/opentelemetry-go/commit/aa95895dfa8c2807e0cb0dd1a220d91fe731509b"><code>aa95895</code></a> Fix sdk/log record attr value limit  (<a href="https://redirect.github.com/open-telemetry/opentelemetry-go/issues/6032">#6032</a>)</li>
<li><a href="https://github.com/open-telemetry/opentelemetry-go/commit/58fdf2a692aaa5a193e03c62d94f5ce0034ebeda"><code>58fdf2a</code></a> Cache successful requests in lychee (<a href="https://redirect.github.com/open-telemetry/opentelemetry-go/issues/6030">#6030</a>)</li>
<li><a href="https://github.com/open-telemetry/opentelemetry-go/commit/ac386f383cdfc14f546b4e55e8726a0a45e8a409"><code>ac386f3</code></a> fix(deps): update golang.org/x/exp digest to 1829a12 (<a href="https://redirect.github.com/open-telemetry/opentelemetry-go/issues/6031">#6031</a>)</li>
<li><a href="https://github.com/open-telemetry/opentelemetry-go/commit/dd83cac3f8f4412bc0c40e739eb33780bd9a3aba"><code>dd83cac</code></a> chore(deps): update googleapis to e6fa225 (<a href="https://redirect.github.com/open-telemetry/opentelemetry-go/issues/6028">#6028</a>)</li>
<li><a href="https://github.com/open-telemetry/opentelemetry-go/commit/de4ff3180d8b7f8ddde9c82b3debe07ca5dc3b33"><code>de4ff31</code></a> fix(deps): update github.com/opentracing-contrib/go-grpc/test digest to ca80a...</li>
<li><a href="https://github.com/open-telemetry/opentelemetry-go/commit/0598dae2346d82de790fa0a5eb1ef94828cdac4d"><code>0598dae</code></a> sdk/metric: Add experimental Enabled method to synchronous instruments (<a href="https://redirect.github.com/open-telemetry/opentelemetry-go/issues/6016">#6016</a>)</li>
<li><a href="https://github.com/open-telemetry/opentelemetry-go/commit/3bb224be0da8a3ba583823e3f99d4d0dfb5f35ed"><code>3bb224b</code></a> chore(deps): update google.golang.org/genproto/googleapis/rpc digest to a4fef...</li>
<li><a href="https://github.com/open-telemetry/opentelemetry-go/commit/13da55468e5680d7f4d6f8a1fe66d36882590f43"><code>13da554</code></a> chore(deps): update codecov/codecov-action action to v5.1.1 (<a href="https://redirect.github.com/open-telemetry/opentelemetry-go/issues/6026">#6026</a>)</li>
<li><a href="https://github.com/open-telemetry/opentelemetry-go/commit/b4a91a210c865374f5c72973eeb450036290366f"><code>b4a91a2</code></a> chore(deps): update module go.opentelemetry.io/auto/sdk to v1.1.0 (<a href="https://redirect.github.com/open-telemetry/opentelemetry-go/issues/6025">#6025</a>)</li>
<li>Additional commits viewable in <a href="https://github.com/open-telemetry/opentelemetry-go/compare/v1.32.0...v1.33.0">compare view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=go.opentelemetry.io/otel/trace&package-manager=go_modules&previous-version=1.32.0&new-version=1.33.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)


</details>
@sonarqubecloud
Copy link

sonarqubecloud bot commented Jan 7, 2025

@DiogoSantoss DiogoSantoss added the merge when ready Indicates bulldozer bot may merge when all checks pass label Jan 8, 2025
@obol-bulldozer obol-bulldozer bot merged commit 5145b79 into main Jan 8, 2025
12 of 13 checks passed
@obol-bulldozer obol-bulldozer bot deleted the diogo/nickname-peerinfo branch January 8, 2025 11:03
DiogoSantoss added a commit that referenced this pull request Jan 14, 2025
Add nickname flag to `run` command, exchange nicknames using peerinfo protocol and create nickname metric to display on Grafana.

Preview:
![Screenshot from 2024-12-17 09-11-26](https://github.com/user-attachments/assets/19aca338-8a10-4af9-89fc-f434250bc02c)

category: feature
ticket: #1655
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

merge when ready Indicates bulldozer bot may merge when all checks pass

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants