Understanding your GHES graphs part 2 - Application server, background jobs, network, storage, and pre-receive hooks #43877
Unanswered
djdefi
asked this question in
Enterprise
Replies: 6 comments 1 reply
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as spam.
This comment was marked as spam.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
In part 1 of our 'Understanding your graphs' mini-series, we talked about GitHub Enterprise System, Process, and Authentication graphs. In part 2, we're going to talk about GitHub Enterprise Application server, background jobs, network, storage, and pre-receive graphs.
App servers
The application servers section provides insight into the activity of GitHub Enterprise services which provide data to users, or integrations.
Sessions
Errors
Active Workers
Queued Requests
App request/response
The Application request / response section looks at the rate of requests, how quickly those requests are responded to, and with what status they returned.
Throughput
Response time
CPU Time
I/O Time
Response Code
2xx
successful status codes will normally be the largest.401
Unauthorized codes will also be present in environments where API and Git over HTTP traffic is present, as initial requests from clients may not provide authentication headers.500
statuses indicate a potential issue with the GitHub Enterprise application, and should be investigated with support.Errors
Background jobs
Aqueduct
maint_git-serv
queues are paused during GitHub Enterprise Backup Utilities snapshot runs. It is normal to see the number for this queue increase while a snapshot is in progress. The queue should then drain rather quickly once the snapshot run is complete.ghe-aqueduct-info
.E-mail
postfix
mail queues.Network
The network interface graphs can be useful in profiling user activity, and throughput of traffic in and out of the the GitHub Enterprise appliance.
Clients
Sockets
Interface Throughput
Interface Errors
Replication Throughput
Replication Interface Errors
Storage
GitHub Enterprise repository performance is very dependent on the underlying storage system. Low latency, local SSD disks provide the highest performance. For more information on the GitHub Enterprise storage architecture, please see the System Overview guide on our documentation site.
Disk usage (Root Device)
Disk usage (Data Device dm-0)
Disk latency (Root Device & Data Device
dm-0
)Disk operations (Root Device)
Disk operations (Data Device
dm-0
)Disk pending operations (root Device)
Disk pending operations (Data Device
dm-0
)Disk traffic (Root Device)
collectd
graph data collection.Disk traffic (Data Device
dm-0
)System services
System services graphs contain data related to the major databases on GitHub Enterprise. These are MySQL, and Elasticseach persistent databases, as well as Redis and Memcached which contain ephemeral data.
Memcached
Memcached provides a layer of in-memory caching for web and API operations. Memcached helps to provide quicker response times for users and integrations interacting with the system.
Memcached usage
Memcached operations
MySQL
MySQL is the primary database in GitHub Enterprise. User, issue, and other non-git or search related metadata is stored within MySQL.
MySQL usage
MySQL threads
MySQL operations
MySQL rows
Redis
The Redis database mainly contains background job queue, as well as session state information.
Redis usage
Redis operations
Elasticsearch
Elasticsearch powers the built in search features in GitHub Enterprise.
Elasticsearch index
Elasticsearch operations
Elasticsearch memory
Elasticsearch garbage collection
Custom hooks
Graphs related to pre-receive hook execution.
Pre-Receive Hooks
Git fetch caching
GitHub Enterprise will attempt to cache intensive operations, such as
git pack-objects
, when multiple identical requests arrive in quick succession.Cached Requests
Served Requests
Ignored Requests
Cluster
Graphs related to GitHub Enterprise High Availability or Clustering.
Cluster ping
Beta Was this translation helpful? Give feedback.
All reactions