trafficcontrol

module
v8.0.0-rc0+incompatible Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 20, 2023 License: Apache-2.0, BSD-2-Clause, BSD-3-Clause, + 1 more

README

Apache Traffic Control

Traffic Control Logo

Apache Traffic Control allows you to build a large scale content delivery network using open source. Built around Apache Traffic Server as the caching software, Traffic Control implements all the core functions of a modern CDN.

Slack Twitter Follow Youtube Subscribe

GitHub release (latest SemVer) Github commits since release

Build Status [^1]

Build Status Documentation Status

Code Status [^1]

Weasel License Checks Go Formatting Go Vet
CodeQL - Go CodeQL - Java CodeQL - Javascript CodeQL - Python

Test Status [^1]

Component Unit Tests Integration Tests
Go Libraries Go Lib Unit Tests Codecov -
Traffic Ops Traffic Ops Unit Tests Codecov Traffic Ops API Contract Tests TO Go Client Integration Tests Codecov
Traffic Router Traffic Router Tests Codecov TR Ultimate Test Harness
Traffic Monitor Traffic Monitor Unit Tests Codecov TM Integration Tests
T3C T3C Unit Tests Codecov T3C Integration Tests
Traffic Stats Traffic Stats Unit Tests Codecov -
Grove Grove Unit Tests Codecov -
Traffic Portal - TP Integration Tests
TCHC - TC Health Client Integration Tests

Documentation [^2]

Components [^2]

  • Traffic Ops is the RESTful API service for management and monitoring of all servers in the CDN.
  • Traffic Portal is the web GUI for managing and monitoring the CDN via the Traffic Ops API.
  • Traffic Router uses DNS and HTTP302 to redirect clients to the closest available cache on the CDN.
  • Traffic Monitor uses HTTP to poll the health of caches and provide this information to Traffic Router.
  • Traffic Stats acquires and stores real-time metrics and statistics into an InfluxDB for charting and alerting.

Releases

Downloads

Questions, Comments, Bugs and More

[^1]: *Status links point to the unreleased master branch

[^2]: Documentation links point to the latest which is the unreleased master branch and are neither stable nor necessarily accurate for any given supported release.

Directories

Path Synopsis
cache-config
t3c
t3cutil/toreq
toreq implements a Traffic Ops client for features in the latest version.
toreq implements a Traffic Ops client for features in the latest version.
t3cutil/toreq/toreqold
Package toreqold calls the previous Traffic Ops API major version.
Package toreqold calls the previous Traffic Ops API major version.
t3cutil/toreq/torequtil
torequtil has utility functions used by toreq and toreqnew which don't require the Traffic Ops client, and thus can be shared.
torequtil has utility functions used by toreq and toreqnew which don't require the Traffic Ops client, and thus can be shared.
testing/ort-tests/config
Package config provides tools to load and validate configuration data for the t3c tests.
Package config provides tools to load and validate configuration data for the t3c tests.
testing/ort-tests/tcdata
Package tcdata provides dynamic loading/unloading of ATC objects to/from a Traffic Ops instance.
Package tcdata provides dynamic loading/unloading of ATC objects to/from a Traffic Ops instance.
experimental
lru
web
infrastructure
lib
go-llog
Package llog provides logging utilities for library packages.
Package llog provides logging utilities for library packages.
go-log
Inspired by https://www.goinggo.net/2013/11/using-log-package-in-go.html
Inspired by https://www.goinggo.net/2013/11/using-log-package-in-go.html
go-nagios
Package nagios is used by Traffic Monitor for unknown reasons.
Package nagios is used by Traffic Monitor for unknown reasons.
go-rfc
Package rfc provides symbols for specifications, primarily IETF RFCs.
Package rfc provides symbols for specifications, primarily IETF RFCs.
go-tc
Package tc provides structures, constants, and functions that are used throughout the components of Apache Traffic Control.
Package tc provides structures, constants, and functions that are used throughout the components of Apache Traffic Control.
go-tc/tovalidate
Package tovalidate contains helpful utility functions and ozzo-validator-compatible rules and rule generators for validating data in the Traffic Ops API.
Package tovalidate contains helpful utility functions and ozzo-validator-compatible rules and rule generators for validating data in the Traffic Ops API.
go-util
Package util contains various miscellaneous utilities that are helpful throughout components and aren't necessarily related to ATC data structures.
Package util contains various miscellaneous utilities that are helpful throughout components and aren't necessarily related to ATC data structures.
varnishcfg
Package varnishcfg manages generating configuration files for Varnish cache and Hitch proxy using data from Traffic Ops APIs.
Package varnishcfg manages generating configuration files for Varnish cache and Hitch proxy using data from Traffic Ops APIs.
sar
package sar implements a syn-ack-rst health ping.
package sar implements a syn-ack-rst health ping.
test
cache
Package cache contains definitions for mechanisms used to extract health and statistics data from cache-server-provided data.
Package cache contains definitions for mechanisms used to extract health and statistics data from cache-server-provided data.
ds
threadsafe
TODO rename
TODO rename
tmcheck
package tmcheck contains utility functions for validating a Traffic Monitor is acting correctly.
package tmcheck contains utility functions for validating a Traffic Monitor is acting correctly.
towrap
Package towrap wraps two versions of Traffic Ops clients to give up-to-date information, possibly using legacy API versions.
Package towrap wraps two versions of Traffic Ops clients to give up-to-date information, possibly using legacy API versions.
traffic_ops
*
testing/api/config
Package config provides tools to load and validate configuration data for Traffic Ops API tests.
Package config provides tools to load and validate configuration data for Traffic Ops API tests.
testing/api/utils
Package utils provides helpful utilities for easing the process of testing Traffic Ops API clients.
Package utils provides helpful utilities for easing the process of testing Traffic Ops API clients.
toclientlib
Package toclientlib provides shared symbols for Traffic Ops Go clients.
Package toclientlib provides shared symbols for Traffic Ops Go clients.
traffic_ops_golang/api
Package api provides general purpose tools for implementing the Traffic Ops API.
Package api provides general purpose tools for implementing the Traffic Ops API.
traffic_ops_golang/apicapability
Package apicapability defines the API handlers for Traffic Ops's API's /api_capabilities endpoint.
Package apicapability defines the API handlers for Traffic Ops's API's /api_capabilities endpoint.
traffic_ops_golang/cachegroupparameter
Package cachegroupparameter is deprecated and will be removed with API v1-3.
Package cachegroupparameter is deprecated and will be removed with API v1-3.
traffic_ops_golang/capabilities
Package capabilities contains logic and handlers for the /capabilities API endpoint.
Package capabilities contains logic and handlers for the /capabilities API endpoint.
traffic_ops_golang/cdn_lock
Package cdn_lock contains the CRD methods which aid in locking and unlocking CDNs.
Package cdn_lock contains the CRD methods which aid in locking and unlocking CDNs.
traffic_ops_golang/cdnfederation
Package cdnfederation is one of many, many packages that contain logic pertaining to federations of CDNs and/or parts of CDNs.
Package cdnfederation is one of many, many packages that contain logic pertaining to federations of CDNs and/or parts of CDNs.
traffic_ops_golang/coordinate
Package coordinate contains API handlers and associated logic for servicing the `/coordinates` API endpoint.
Package coordinate contains API handlers and associated logic for servicing the `/coordinates` API endpoint.
traffic_ops_golang/deliveryservice
Package deliveryservice contains logic and handlers for /deliveryservices and related sub-routes (e.g.
Package deliveryservice contains logic and handlers for /deliveryservices and related sub-routes (e.g.
traffic_ops_golang/deliveryservice/request
Package request contains logic and handlers for API routes dealing with Delivery Service Requests (DSRs).
Package request contains logic and handlers for API routes dealing with Delivery Service Requests (DSRs).
traffic_ops_golang/deliveryservicerequests
Package deliveryservicerequests contains the handler for the endpoint responsible for issuing a request for Delivery Service creation via email - not to be confused with package github.com/apache/trafficcontrol/traffic_ops/traffic_ops_golang/deliveryservice/request.
Package deliveryservicerequests contains the handler for the endpoint responsible for issuing a request for Delivery Service creation via email - not to be confused with package github.com/apache/trafficcontrol/traffic_ops/traffic_ops_golang/deliveryservice/request.
traffic_ops_golang/federation_resolvers
Package federation_resolvers contains handler logic for the /federation_resolvers and /federation_resolvers/{{ID}} endpoints.
Package federation_resolvers contains handler logic for the /federation_resolvers and /federation_resolvers/{{ID}} endpoints.
traffic_ops_golang/iso
Package iso provides support for generating ISO images.
Package iso provides support for generating ISO images.
traffic_ops_golang/logs
Package logs contains handlers and logic for the /logs and /logs/newcount API endpoints.
Package logs contains handlers and logic for the /logs and /logs/newcount API endpoints.
traffic_ops_golang/monitoring
Package monitoring contains handlers and supporting logic for the /cdns/{{CDN Name}}/configs/monitoring Traffic Ops API endpoint.
Package monitoring contains handlers and supporting logic for the /cdns/{{CDN Name}}/configs/monitoring Traffic Ops API endpoint.
traffic_ops_golang/profile
Package profile includes logic and handlers for Profile-related API endpoints, including /profiles, /profiles/name/{{name}}/parameters, /profiles/{{ID}}/parameters, /profiles/name/{{New Profile Name}}/copy/{{existing Profile Name}}, /profiles/import, and /profiles/{{ID}}/export.
Package profile includes logic and handlers for Profile-related API endpoints, including /profiles, /profiles/name/{{name}}/parameters, /profiles/{{ID}}/parameters, /profiles/name/{{New Profile Name}}/copy/{{existing Profile Name}}, /profiles/import, and /profiles/{{ID}}/export.
traffic_ops_golang/routing
Package routing defines the HTTP routes for Traffic Ops and provides tools to register those routes with appropriate middleware.
Package routing defines the HTTP routes for Traffic Ops and provides tools to register those routes with appropriate middleware.
traffic_ops_golang/routing/middleware
Package middleware provides symbols for HTTP "middleware" which wraps handlers to perform common behaviors, such as authentication, headers, and compression.
Package middleware provides symbols for HTTP "middleware" which wraps handlers to perform common behaviors, such as authentication, headers, and compression.
traffic_ops_golang/server
Package server provides tools for manipulating the server database table and corresponding http handlers.
Package server provides tools for manipulating the server database table and corresponding http handlers.
traffic_ops_golang/swaggerdocs/v13
Package docs Traffic Ops API
Package docs Traffic Ops API
traffic_ops_golang/trafficvault
Package trafficvault provides the interfaces and types necessary to support various Traffic Vault backend data stores.
Package trafficvault provides the interfaces and types necessary to support various Traffic Vault backend data stores.
traffic_ops_golang/trafficvault/backends
Package backends is simply for importing the traffic vault backend packages so they can initialize.
Package backends is simply for importing the traffic vault backend packages so they can initialize.
traffic_ops_golang/trafficvault/backends/disabled
Package disabled provides a TrafficVault implementation that simply returns an error for every method stating that Traffic Vault is disabled.
Package disabled provides a TrafficVault implementation that simply returns an error for every method stating that Traffic Vault is disabled.
traffic_ops_golang/trafficvault/backends/postgres
Package postgres provides a TrafficVault implementation which uses PostgreSQL as the backend.
Package postgres provides a TrafficVault implementation which uses PostgreSQL as the backend.
traffic_ops_golang/trafficvault/backends/riaksvc
Package riaksvc provides a TrafficVault implementation which uses Riak as the backend.
Package riaksvc provides a TrafficVault implementation which uses Riak as the backend.
v3-client
Package client implements methods for interacting with the Traffic Ops API.
Package client implements methods for interacting with the Traffic Ops API.
v4-client
Package client implements methods for interacting with the Traffic Ops API.
Package client implements methods for interacting with the Traffic Ops API.
v5-client
Package client implements methods for interacting with the Traffic Ops API.
Package client implements methods for interacting with the Traffic Ops API.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL