Skip to content
This repository was archived by the owner on Aug 2, 2022. It is now read-only.

Telemetry - add cppkin support #9358

Merged
merged 30 commits into from
Aug 17, 2020
Merged

Telemetry - add cppkin support #9358

merged 30 commits into from
Aug 17, 2020

Conversation

heifner
Copy link
Contributor

@heifner heifner commented Aug 4, 2020

Change Description

Adds cppkin logging for http/amqp transactions, block production, SHiP block receive/send, rodoes block receive/processed.

Trace entries added:

  • amqp_trx_plugin
    -- Trace: "Transaction", Span: "AMQP Received", Tag: "trx_id" [received an input transaction from AMQP "trx" queue]
    -- Trace: "Transaction", Span: "Processed", Tag: "trx_id" [executed transaction and placed in pending block]
    ---- Includes: Tags: "block_num", "block_time", "elapsed" and either "status" or "error"

  • chain_plugin
    -- Trace: "Transaction", Span: "HTTP Received", Tag: "trx_id" [received an input transaction from http push_transaction]
    -- Trace: "Transaction", Span: "Processed", Tag: "trx_id" [executed transaction and placed in pending block]
    ---- Includes: Tags: "block_num", "block_time", "elapsed" and either "status" or "error"
    -- Trace: "Transaction", Span: "HTTP Received", Tag: "trx_id" [received an input transaction from http send_transaction]
    -- Trace: "Transaction", Span: "Processed", Tag: "trx_id" [executed transaction and placed in pending block]
    ---- Includes: Tags: "block_num", "block_time", "elapsed" and either "status" or "error"

  • net_plugin
    -- Trace: "Block", Span: "Accepted", Tags: "block_id", "block_num", "block_time"
    -- Trace: "Block", Span: "PreAccepted", Tags: "block_id", "block_num", "block_time", "producer" [Logged when trusted producer allows for sending of block before processing]

  • state_history_plugin
    -- Trace: "Block", Span: "SHiP-Accepted", Tags: "block_id", "block_num", "block_time"
    -- Trace: "Block", Span: "SHiP-Send", Tags: "block_id", "block_num", "block_time"

  • rodeos
    -- Trace: "Block", Span: "rodeos-received", Tags: "block_id", "block_num", "block_time"
    -- Trace: "Block", Span: "Filter-Start", Tags: "block_num"
    -- Trace: "Block", Span: "Filter-Stop", Tags: "block_num"

Change Type

Select ONE

  • Documentation
  • Stability bug fix
  • Other
  • Other - special case

Consensus Changes

  • Consensus Changes

API Changes

  • API Changes

Documentation Additions

  • Documentation Additions

  • New plugin cppkin_plugin for both nodeos and rodeos

    Config Options for eosio::cppkin_plugin:
    --cppkin-endpoint arg cppkin connection endpoint (required)
    --cppkin-service-name arg cppkin service name
    --cppkin-api-key arg cppkin API Key
    --cppkin-sample-count arg (=1) cppkin sample count

@heifner
Copy link
Contributor Author

heifner commented Aug 5, 2020

Example Zipkin
Submitted:
image

Processed:
image

AMQP Submitted:
image

AMQP Processed:
image

Block Accepted:
image

SHiP Accepted:
image

@gleehokie
Copy link
Contributor

The name “cppkin”, while obviously a play on Zipkin, is not descriptive of what this module does. Would a better name be “telemetry” or something like that?

@heifner
Copy link
Contributor Author

heifner commented Aug 13, 2020

The name “cppkin”, while obviously a play on Zipkin, is not descriptive of what this module does. Would a better name be “telemetry” or something like that?

Happy to name it whatever you like. Any suggestions? telemetry_plugin ? It is named cppkin_plugin because it uses the EOSIO/cppkin library for sending info to Zipkin & New Relic.

@heifner
Copy link
Contributor Author

heifner commented Aug 14, 2020

@gleehokie these changes are particular to EOSIO/cppkin; the cppkin_plugin is specific to EOSIO/cppkin. As such I don't think it makes sense to name it telemetry_plugin. We could potentially have other telemetry support added in the future. As this is now it is not a general telemetry solution.

I plan on merging this PR now. If you feel strongly about renaming, I will happily do that in a follow-on PR.

@heifner heifner merged commit 284529f into develop-boxed Aug 17, 2020
@heifner heifner deleted the telemtry branch August 17, 2020 11:32
@heifner heifner mentioned this pull request Oct 20, 2020
7 tasks
This was referenced Nov 3, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants