diagnostics

package
v2.0.0-beta.5 Latest Latest
Warning

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

Go to latest
Published: Mar 13, 2024 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DiagnosticService

type DiagnosticService struct {
	Options     []option.RequestOption
	Traceroutes *TracerouteService
}

DiagnosticService contains methods and other services that help with interacting with the cloudflare API. Note, unlike clients, this service does not read variables from the environment automatically. You should not instantiate this service directly, and instead use the NewDiagnosticService method instead.

func NewDiagnosticService

func NewDiagnosticService(opts ...option.RequestOption) (r *DiagnosticService)

NewDiagnosticService generates a new service that applies the given options to each request. These options are applied after the parent client's options (if there is one), and before any request-specific options.

type Error

type Error = apierror.Error

type MagicTransitTargetResult

type MagicTransitTargetResult struct {
	Colos []MagicTransitTargetResultColo `json:"colos"`
	// The target hostname, IPv6, or IPv6 address.
	Target string                       `json:"target"`
	JSON   magicTransitTargetResultJSON `json:"-"`
}

func (*MagicTransitTargetResult) UnmarshalJSON

func (r *MagicTransitTargetResult) UnmarshalJSON(data []byte) (err error)

type MagicTransitTargetResultColo

type MagicTransitTargetResultColo struct {
	Colo MagicTransitTargetResultColosColo `json:"colo"`
	// Errors resulting from collecting traceroute from colo to target.
	Error MagicTransitTargetResultColosError `json:"error"`
	Hops  []MagicTransitTargetResultColosHop `json:"hops"`
	// Aggregated statistics from all hops about the target.
	TargetSummary interface{} `json:"target_summary"`
	// Total time of traceroute in ms.
	TracerouteTimeMs int64                            `json:"traceroute_time_ms"`
	JSON             magicTransitTargetResultColoJSON `json:"-"`
}

func (*MagicTransitTargetResultColo) UnmarshalJSON

func (r *MagicTransitTargetResultColo) UnmarshalJSON(data []byte) (err error)

type MagicTransitTargetResultColosColo

type MagicTransitTargetResultColosColo struct {
	// Source colo city.
	City string `json:"city"`
	// Source colo name.
	Name string                                `json:"name"`
	JSON magicTransitTargetResultColosColoJSON `json:"-"`
}

func (*MagicTransitTargetResultColosColo) UnmarshalJSON

func (r *MagicTransitTargetResultColosColo) UnmarshalJSON(data []byte) (err error)

type MagicTransitTargetResultColosError

type MagicTransitTargetResultColosError string

Errors resulting from collecting traceroute from colo to target.

const (
	MagicTransitTargetResultColosErrorEmpty                             MagicTransitTargetResultColosError = ""
	MagicTransitTargetResultColosErrorCouldNotGatherTracerouteDataCode1 MagicTransitTargetResultColosError = "Could not gather traceroute data: Code 1"
	MagicTransitTargetResultColosErrorCouldNotGatherTracerouteDataCode2 MagicTransitTargetResultColosError = "Could not gather traceroute data: Code 2"
	MagicTransitTargetResultColosErrorCouldNotGatherTracerouteDataCode3 MagicTransitTargetResultColosError = "Could not gather traceroute data: Code 3"
	MagicTransitTargetResultColosErrorCouldNotGatherTracerouteDataCode4 MagicTransitTargetResultColosError = "Could not gather traceroute data: Code 4"
)

type MagicTransitTargetResultColosHop

type MagicTransitTargetResultColosHop struct {
	// An array of node objects.
	Nodes []MagicTransitTargetResultColosHopsNode `json:"nodes"`
	// Number of packets where no response was received.
	PacketsLost int64 `json:"packets_lost"`
	// Number of packets sent with specified TTL.
	PacketsSent int64 `json:"packets_sent"`
	// The time to live (TTL).
	PacketsTTL int64                                `json:"packets_ttl"`
	JSON       magicTransitTargetResultColosHopJSON `json:"-"`
}

func (*MagicTransitTargetResultColosHop) UnmarshalJSON

func (r *MagicTransitTargetResultColosHop) UnmarshalJSON(data []byte) (err error)

type MagicTransitTargetResultColosHopsNode

type MagicTransitTargetResultColosHopsNode struct {
	// AS number associated with the node object.
	ASN string `json:"asn"`
	// IP address of the node.
	IP string `json:"ip"`
	// Field appears if there is an additional annotation printed when the probe
	// returns. Field also appears when running a GRE+ICMP traceroute to denote which
	// traceroute a node comes from.
	Labels []string `json:"labels"`
	// Maximum RTT in ms.
	MaxRTTMs float64 `json:"max_rtt_ms"`
	// Mean RTT in ms.
	MeanRTTMs float64 `json:"mean_rtt_ms"`
	// Minimum RTT in ms.
	MinRTTMs float64 `json:"min_rtt_ms"`
	// Host name of the address, this may be the same as the IP address.
	Name string `json:"name"`
	// Number of packets with a response from this node.
	PacketCount int64 `json:"packet_count"`
	// Standard deviation of the RTTs in ms.
	StdDevRTTMs float64                                   `json:"std_dev_rtt_ms"`
	JSON        magicTransitTargetResultColosHopsNodeJSON `json:"-"`
}

func (*MagicTransitTargetResultColosHopsNode) UnmarshalJSON

func (r *MagicTransitTargetResultColosHopsNode) UnmarshalJSON(data []byte) (err error)

type TracerouteNewParams

type TracerouteNewParams struct {
	// Identifier
	AccountID param.Field[string]   `path:"account_id,required"`
	Targets   param.Field[[]string] `json:"targets,required"`
	// If no source colo names specified, all colos will be used. China colos are
	// unavailable for traceroutes.
	Colos   param.Field[[]string]                   `json:"colos"`
	Options param.Field[TracerouteNewParamsOptions] `json:"options"`
}

func (TracerouteNewParams) MarshalJSON

func (r TracerouteNewParams) MarshalJSON() (data []byte, err error)

type TracerouteNewParamsOptions

type TracerouteNewParamsOptions struct {
	// Max TTL.
	MaxTTL param.Field[int64] `json:"max_ttl"`
	// Type of packet sent.
	PacketType param.Field[TracerouteNewParamsOptionsPacketType] `json:"packet_type"`
	// Number of packets sent at each TTL.
	PacketsPerTTL param.Field[int64] `json:"packets_per_ttl"`
	// For UDP and TCP, specifies the destination port. For ICMP, specifies the initial
	// ICMP sequence value. Default value 0 will choose the best value to use for each
	// protocol.
	Port param.Field[int64] `json:"port"`
	// Set the time (in seconds) to wait for a response to a probe.
	WaitTime param.Field[int64] `json:"wait_time"`
}

func (TracerouteNewParamsOptions) MarshalJSON

func (r TracerouteNewParamsOptions) MarshalJSON() (data []byte, err error)

type TracerouteNewParamsOptionsPacketType

type TracerouteNewParamsOptionsPacketType string

Type of packet sent.

const (
	TracerouteNewParamsOptionsPacketTypeIcmp    TracerouteNewParamsOptionsPacketType = "icmp"
	TracerouteNewParamsOptionsPacketTypeTcp     TracerouteNewParamsOptionsPacketType = "tcp"
	TracerouteNewParamsOptionsPacketTypeUdp     TracerouteNewParamsOptionsPacketType = "udp"
	TracerouteNewParamsOptionsPacketTypeGRE     TracerouteNewParamsOptionsPacketType = "gre"
	TracerouteNewParamsOptionsPacketTypeGREIcmp TracerouteNewParamsOptionsPacketType = "gre+icmp"
)

type TracerouteNewResponseEnvelope

type TracerouteNewResponseEnvelope struct {
	Errors   []TracerouteNewResponseEnvelopeErrors   `json:"errors,required"`
	Messages []TracerouteNewResponseEnvelopeMessages `json:"messages,required"`
	Result   []MagicTransitTargetResult              `json:"result,required,nullable"`
	// Whether the API call was successful
	Success    TracerouteNewResponseEnvelopeSuccess    `json:"success,required"`
	ResultInfo TracerouteNewResponseEnvelopeResultInfo `json:"result_info"`
	JSON       tracerouteNewResponseEnvelopeJSON       `json:"-"`
}

func (*TracerouteNewResponseEnvelope) UnmarshalJSON

func (r *TracerouteNewResponseEnvelope) UnmarshalJSON(data []byte) (err error)

type TracerouteNewResponseEnvelopeErrors

type TracerouteNewResponseEnvelopeErrors struct {
	Code    int64                                   `json:"code,required"`
	Message string                                  `json:"message,required"`
	JSON    tracerouteNewResponseEnvelopeErrorsJSON `json:"-"`
}

func (*TracerouteNewResponseEnvelopeErrors) UnmarshalJSON

func (r *TracerouteNewResponseEnvelopeErrors) UnmarshalJSON(data []byte) (err error)

type TracerouteNewResponseEnvelopeMessages

type TracerouteNewResponseEnvelopeMessages struct {
	Code    int64                                     `json:"code,required"`
	Message string                                    `json:"message,required"`
	JSON    tracerouteNewResponseEnvelopeMessagesJSON `json:"-"`
}

func (*TracerouteNewResponseEnvelopeMessages) UnmarshalJSON

func (r *TracerouteNewResponseEnvelopeMessages) UnmarshalJSON(data []byte) (err error)

type TracerouteNewResponseEnvelopeResultInfo

type TracerouteNewResponseEnvelopeResultInfo struct {
	// Total number of results for the requested service
	Count float64 `json:"count"`
	// Current page within paginated list of results
	Page float64 `json:"page"`
	// Number of results per page of results
	PerPage float64 `json:"per_page"`
	// Total results available without any search parameters
	TotalCount float64                                     `json:"total_count"`
	JSON       tracerouteNewResponseEnvelopeResultInfoJSON `json:"-"`
}

func (*TracerouteNewResponseEnvelopeResultInfo) UnmarshalJSON

func (r *TracerouteNewResponseEnvelopeResultInfo) UnmarshalJSON(data []byte) (err error)

type TracerouteNewResponseEnvelopeSuccess

type TracerouteNewResponseEnvelopeSuccess bool

Whether the API call was successful

const (
	TracerouteNewResponseEnvelopeSuccessTrue TracerouteNewResponseEnvelopeSuccess = true
)

type TracerouteService

type TracerouteService struct {
	Options []option.RequestOption
}

TracerouteService contains methods and other services that help with interacting with the cloudflare API. Note, unlike clients, this service does not read variables from the environment automatically. You should not instantiate this service directly, and instead use the NewTracerouteService method instead.

func NewTracerouteService

func NewTracerouteService(opts ...option.RequestOption) (r *TracerouteService)

NewTracerouteService generates a new service that applies the given options to each request. These options are applied after the parent client's options (if there is one), and before any request-specific options.

func (*TracerouteService) New

Run traceroutes from Cloudflare colos.

Jump to

Keyboard shortcuts

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