Skip to content

Commit

Permalink
Original mainnet configuration
Browse files Browse the repository at this point in the history
  • Loading branch information
newhoggy committed Oct 12, 2021
1 parent e0fd815 commit d3bb731
Showing 1 changed file with 259 additions and 0 deletions.
259 changes: 259 additions & 0 deletions configuration/cardano/mainnet-config.yaml
@@ -0,0 +1,259 @@
##########################################################
############### Mainnet #########
############### Cardano Byron Node Configuration #########
##########################################################


##### Locations #####

GenesisFile: genesis.json
SocketPath: db/node.socket

##### Blockfetch Protocol

# The maximum number of used peers during bulk sync.
MaxConcurrencyBulkSync: 1
# The maximum number of used peers when fetching newly forged blocks.
MaxConcurrencyDeadline: 2

#TODO: These parameters cannot yet be used in the config file, only on the CLI:
#DatabasePath: db/
#Topology: configuration/mainnet-topology.json
#Port 7776

##### Core protocol parameters #####

# This is the instance of the Ouroboros family that we are running.
# "RealPBFT" is the real (permissive) OBFT protocol, which is what we use on
# mainnet in Byron era.
Protocol: RealPBFT

# The mainnet does not include the network magic into addresses. Testnets do.
RequiresNetworkMagic: RequiresNoMagic


##### Update system parameters #####

# This protocol version number gets used by block producing nodes as part
# of the system for agreeing on and synchronising protocol updates.
LastKnownBlockVersion-Major: 0
LastKnownBlockVersion-Minor: 2
LastKnownBlockVersion-Alt: 0

# In the Byron era some software versions are also published on the chain.
# We do this only for Byron compatibility now.
ApplicationName: cardano-sl
ApplicationVersion: 1


##### Logging configuration #####

# Enable or disable logging overall
TurnOnLogging: True

# Enable the collection of various OS metrics such as memory and CPU use.
# These metrics are traced in the context name: 'cardano.node.metrics' and can
# be directed to the logs or monitoring backends.
TurnOnLogMetrics: True

# Global logging severity filter. Messages must have at least this severity to
# pass. Typical values would be Warning, Notice, Info or Debug.
minSeverity: Info

# Log items can be rendered with more or less verbose detail.
# Verbosity ranges from MinimalVerbosity, NormalVerbosity to MaximalVerbosity
TracingVerbosity: NormalVerbosity

# The system supports a number of backends for logging and monitoring.
# This setting lists the backends that will be available to use in the
# configuration below. The logging backend is called Katip.
setupBackends:
- KatipBK

# This specifies the default backends that trace output is sent to if it
# is not specifically configured to be sent to other backends.
defaultBackends:
- KatipBK

# EKG is a simple metrics monitoring system. Uncomment the following to enable
# this backend and listen on the given local port and point your web browser to
# http://localhost:12788/
# hasEKG: 12788

# The Prometheus monitoring system exports EKG metrics. Uncomment the following
# to listen on the given port. Output is provided on
# http://localhost:12789/metrics
# hasPrometheus:
# - "127.0.0.1"
# - 12789

# To enable the 'TraceForwarder' backend, uncomment the following setting. Log
# items are then forwarded based on an entry in 'mapBackends' to a separate
# process running a 'TraceAcceptor'.
# Example using UNIX pipes:
# traceForwardTo:
# tag: RemotePipe
# contents: "logs/pipe"
#
# Example using Windows named pipes:
# traceForwardTo:
# tag: RemotePipe
# contents: "\\\\.\\pipe\\acceptor"
#
# Example using network socket:
# traceForwardTo:
# tag: RemoteSocket
# contents:
# - "127.0.0.1"
# - "2997"

# For the Katip logging backend we must set up outputs (called scribes)
# The available types of scribe are:
# FileSK for files
# StdoutSK/StderrSK for stdout/stderr
# JournalSK for systemd's journal system
# DevNullSK ignores all output
# The scribe output format can be ScText or ScJson. Log rotation settings can
# be specified in the defaults below or overidden on a per-scribe basis here.
setupScribes:
- scKind: FileSK
scName: "logs/mainnet.log"
scFormat: ScText

- scKind: StdoutSK
scName: stdout
scFormat: ScText

# For the Katip logging backend this specifies the default scribes that trace
# output is sent to if it is not configured to be sent to other scribes.
defaultScribes:
- - FileSK
- "logs/mainnet.log"
- - StdoutSK
- stdout

# The default file rotation settings for katip scribes, unless overridden
# in the setupScribes above for specific scribes.
rotation:
rpLogLimitBytes: 5000000
rpKeepFilesNum: 3
rpMaxAgeHours: 24


##### Coarse grained logging control #####

# Trace output from whole subsystems can be enabled/disabled using the following
# settings. This provides fairly coarse grained control, but it is relatively
# efficient at filtering out unwanted trace output.

# Trace BlockFetch client.
TraceBlockFetchClient: False

# Trace BlockFetch decisions made by the BlockFetch client.
TraceBlockFetchDecisions: False

# Trace BlockFetch protocol messages.
TraceBlockFetchProtocol: False

# Serialised Trace BlockFetch protocol messages.
TraceBlockFetchProtocolSerialised: False

# Trace BlockFetch server.
TraceBlockFetchServer: False

# Trace BlockchainTime.
TraceBlockchainTime: False

# Verbose tracer of ChainDB
TraceChainDb: True

# Trace ChainSync client.
TraceChainSyncClient: False

# Trace ChainSync server (blocks).
TraceChainSyncBlockServer: False

# Trace ChainSync server (headers).
TraceChainSyncHeaderServer: False

# Trace ChainSync protocol messages.
TraceChainSyncProtocol: False

# Trace DNS Resolver messages.
TraceDNSResolver: True

# Trace DNS Subscription messages.
TraceDNSSubscription: True

# Trace error policy resolution.
TraceErrorPolicy: True

# Trace local error policy resolution.
TraceLocalErrorPolicy: True

# Trace block forging.
TraceForge: True

# Trace Handshake protocol messages.
TraceHandshake: False

# Trace IP Subscription messages.
TraceIpSubscription: True

# Trace local ChainSync protocol messages.
TraceLocalChainSyncProtocol: False

# Trace local Handshake protocol messages.
TraceLocalHandshake: False

# Trace local TxSubmission protocol messages.
TraceLocalTxSubmissionProtocol: False

# Trace local TxSubmission server.
TraceLocalTxSubmissionServer: False

# Trace mempool.
TraceMempool: True

# Trace Mux Events.
TraceMux: False

# Trace TxSubmission server (inbound transactions).
TraceTxInbound: False

# Trace TxSubmission client (outbound transactions).
TraceTxOutbound: False

# Trace TxSubmission protocol messages.
TraceTxSubmissionProtocol: False


##### Fine grained logging control #####

# It is also possible to have more fine grained control over filtering of
# trace output, and to match and route trace output to particular backends.
# This is less efficient than the coarse trace filters above but provides
# much more precise control.

options:

# This routes metrics matching specific names to particular backends.
# This overrides the 'defaultBackends' listed above. And note that it is
# an override and not an extension so anything matched here will not
# go to the default backend, only to the explicitly listed backends.
mapBackends:
cardano.node.metrics:
- EKGViewBK

# redirects traced values to a specific scribe which is identified by its
# type and its name, separated by "::":
mapScribes:
cardano.node.metrics:
- "FileSK::logs/mainnet.log"

# apply a filter on message severity on messages in a specific named context.
# this filter is applied additionally to the global 'minSeverity' and thus
# needs to be at least as high.
mapSeverity:
cardano.node.ChainDB: Notice
cardano.node.DnsSubscription: Debug

0 comments on commit d3bb731

Please sign in to comment.