observer

package
v1.9.0-rc0 Latest Latest
Warning

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

Go to latest
Published: Aug 18, 2020 License: Apache-2.0 Imports: 25 Imported by: 33

Documentation

Index

Constants

View Source
const EventType_EventSample = flow.EventType_EventSample
View Source
const EventType_RecordLost = flow.EventType_RecordLost
View Source
const EventType_UNKNOWN = flow.EventType_UNKNOWN
View Source
const FlowType_L3_L4 = flow.FlowType_L3_L4
View Source
const FlowType_L7 = flow.FlowType_L7
View Source
const FlowType_UNKNOWN_TYPE = flow.FlowType_UNKNOWN_TYPE
View Source
const IPVersion_IP_NOT_USED = flow.IPVersion_IP_NOT_USED
View Source
const IPVersion_IPv4 = flow.IPVersion_IPv4
View Source
const IPVersion_IPv6 = flow.IPVersion_IPv6
View Source
const L7FlowType_REQUEST = flow.L7FlowType_REQUEST
View Source
const L7FlowType_RESPONSE = flow.L7FlowType_RESPONSE
View Source
const L7FlowType_SAMPLE = flow.L7FlowType_SAMPLE
View Source
const L7FlowType_UNKNOWN_L7_TYPE = flow.L7FlowType_UNKNOWN_L7_TYPE
View Source
const LostEventSource_OBSERVER_EVENTS_QUEUE = flow.LostEventSource_OBSERVER_EVENTS_QUEUE
View Source
const LostEventSource_PERF_EVENT_RING_BUFFER = flow.LostEventSource_PERF_EVENT_RING_BUFFER
View Source
const LostEventSource_UNKNOWN_LOST_EVENT_SOURCE = flow.LostEventSource_UNKNOWN_LOST_EVENT_SOURCE
View Source
const TraceObservationPoint_FROM_ENDPOINT = flow.TraceObservationPoint_FROM_ENDPOINT
View Source
const TraceObservationPoint_FROM_HOST = flow.TraceObservationPoint_FROM_HOST
View Source
const TraceObservationPoint_FROM_NETWORK = flow.TraceObservationPoint_FROM_NETWORK
View Source
const TraceObservationPoint_FROM_OVERLAY = flow.TraceObservationPoint_FROM_OVERLAY
View Source
const TraceObservationPoint_FROM_PROXY = flow.TraceObservationPoint_FROM_PROXY
View Source
const TraceObservationPoint_FROM_STACK = flow.TraceObservationPoint_FROM_STACK
View Source
const TraceObservationPoint_TO_ENDPOINT = flow.TraceObservationPoint_TO_ENDPOINT
View Source
const TraceObservationPoint_TO_HOST = flow.TraceObservationPoint_TO_HOST
View Source
const TraceObservationPoint_TO_NETWORK = flow.TraceObservationPoint_TO_NETWORK
View Source
const TraceObservationPoint_TO_OVERLAY = flow.TraceObservationPoint_TO_OVERLAY
View Source
const TraceObservationPoint_TO_PROXY = flow.TraceObservationPoint_TO_PROXY
View Source
const TraceObservationPoint_TO_STACK = flow.TraceObservationPoint_TO_STACK
View Source
const TraceObservationPoint_UNKNOWN_POINT = flow.TraceObservationPoint_UNKNOWN_POINT
View Source
const TrafficDirection_EGRESS = flow.TrafficDirection_EGRESS
View Source
const TrafficDirection_INGRESS = flow.TrafficDirection_INGRESS
View Source
const TrafficDirection_TRAFFIC_DIRECTION_UNKNOWN = flow.TrafficDirection_TRAFFIC_DIRECTION_UNKNOWN
View Source
const Verdict_DROPPED = flow.Verdict_DROPPED
View Source
const Verdict_ERROR = flow.Verdict_ERROR
View Source
const Verdict_FORWARDED = flow.Verdict_FORWARDED
View Source
const Verdict_VERDICT_UNKNOWN = flow.Verdict_VERDICT_UNKNOWN

Variables

View Source
var EventType_name = flow.EventType_name
View Source
var EventType_value = flow.EventType_value
View Source
var File_observer_observer_proto protoreflect.FileDescriptor
View Source
var FlowType_name = flow.FlowType_name
View Source
var FlowType_value = flow.FlowType_value
View Source
var IPVersion_name = flow.IPVersion_name
View Source
var IPVersion_value = flow.IPVersion_value
View Source
var L7FlowType_name = flow.L7FlowType_name
View Source
var L7FlowType_value = flow.L7FlowType_value
View Source
var LostEventSource_name = flow.LostEventSource_name
View Source
var LostEventSource_value = flow.LostEventSource_value
View Source
var TraceObservationPoint_name = flow.TraceObservationPoint_name
View Source
var TraceObservationPoint_value = flow.TraceObservationPoint_value
View Source
var TrafficDirection_name = flow.TrafficDirection_name
View Source
var TrafficDirection_value = flow.TrafficDirection_value
View Source
var Verdict_name = flow.Verdict_name
View Source
var Verdict_value = flow.Verdict_value

Functions

func RegisterObserverServer

func RegisterObserverServer(s *grpc.Server, srv ObserverServer)

Types

type CiliumEventType

type CiliumEventType = flow.CiliumEventType

type DNS

type DNS = flow.DNS

type Endpoint

type Endpoint = flow.Endpoint

type Ethernet

type Ethernet = flow.Ethernet

type EventType

type EventType = flow.EventType

type EventTypeFilter

type EventTypeFilter = flow.EventTypeFilter

type Flow

type Flow = flow.Flow

type FlowFilter

type FlowFilter = flow.FlowFilter

type FlowType

type FlowType = flow.FlowType

type GetFlowsRequest

type GetFlowsRequest struct {

	// Number of flows that should be returned. Incompatible with `since/until`.
	Number uint64 `protobuf:"varint,1,opt,name=number,proto3" json:"number,omitempty"`
	// follow sets when the server should continue to stream flows after
	// printing the last N flows.
	Follow bool `protobuf:"varint,3,opt,name=follow,proto3" json:"follow,omitempty"`
	// blacklist defines a list of filters which have to match for a flow to be
	// excluded from the result.
	// If multiple blacklist filters are specified, only one of them has to
	// match for a flow to be excluded.
	Blacklist []*flow.FlowFilter `protobuf:"bytes,5,rep,name=blacklist,proto3" json:"blacklist,omitempty"`
	// whitelist defines a list of filters which have to match for a flow to be
	// included in the result.
	// If multiple whitelist filters are specified, only one of them has to
	// match for a flow to be included.
	// The whitelist and blacklist can both be specified. In such cases, the
	// set of the returned flows is the set difference `whitelist - blacklist`.
	// In other words, the result will contain all flows matched by the
	// whitelist that are not also simultaneously matched by the blacklist.
	Whitelist []*flow.FlowFilter `protobuf:"bytes,6,rep,name=whitelist,proto3" json:"whitelist,omitempty"`
	// Since this time for returned flows. Incompatible with `number`.
	Since *timestamp.Timestamp `protobuf:"bytes,7,opt,name=since,proto3" json:"since,omitempty"`
	// Until this time for returned flows. Incompatible with `number`.
	Until *timestamp.Timestamp `protobuf:"bytes,8,opt,name=until,proto3" json:"until,omitempty"`
	// contains filtered or unexported fields
}

func (*GetFlowsRequest) Descriptor deprecated

func (*GetFlowsRequest) Descriptor() ([]byte, []int)

Deprecated: Use GetFlowsRequest.ProtoReflect.Descriptor instead.

func (*GetFlowsRequest) GetBlacklist

func (x *GetFlowsRequest) GetBlacklist() []*flow.FlowFilter

func (*GetFlowsRequest) GetFollow

func (x *GetFlowsRequest) GetFollow() bool

func (*GetFlowsRequest) GetNumber

func (x *GetFlowsRequest) GetNumber() uint64

func (*GetFlowsRequest) GetSince

func (x *GetFlowsRequest) GetSince() *timestamp.Timestamp

func (*GetFlowsRequest) GetUntil

func (x *GetFlowsRequest) GetUntil() *timestamp.Timestamp

func (*GetFlowsRequest) GetWhitelist

func (x *GetFlowsRequest) GetWhitelist() []*flow.FlowFilter

func (*GetFlowsRequest) MarshalJSON

func (msg *GetFlowsRequest) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler

func (*GetFlowsRequest) ProtoMessage

func (*GetFlowsRequest) ProtoMessage()

func (*GetFlowsRequest) ProtoReflect

func (x *GetFlowsRequest) ProtoReflect() protoreflect.Message

func (*GetFlowsRequest) Reset

func (x *GetFlowsRequest) Reset()

func (*GetFlowsRequest) String

func (x *GetFlowsRequest) String() string

func (*GetFlowsRequest) UnmarshalJSON

func (msg *GetFlowsRequest) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler

func (*GetFlowsRequest) Validate added in v1.8.0

func (m *GetFlowsRequest) Validate() error

Validate checks the field values on GetFlowsRequest with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.

type GetFlowsRequestValidationError added in v1.8.0

type GetFlowsRequestValidationError struct {
	// contains filtered or unexported fields
}

GetFlowsRequestValidationError is the validation error returned by GetFlowsRequest.Validate if the designated constraints aren't met.

func (GetFlowsRequestValidationError) Cause added in v1.8.0

Cause function returns cause value.

func (GetFlowsRequestValidationError) Error added in v1.8.0

Error satisfies the builtin error interface

func (GetFlowsRequestValidationError) ErrorName added in v1.8.0

func (e GetFlowsRequestValidationError) ErrorName() string

ErrorName returns error name.

func (GetFlowsRequestValidationError) Field added in v1.8.0

Field function returns field value.

func (GetFlowsRequestValidationError) Key added in v1.8.0

Key function returns key value.

func (GetFlowsRequestValidationError) Reason added in v1.8.0

Reason function returns reason value.

type GetFlowsResponse

type GetFlowsResponse struct {

	// Types that are assignable to ResponseTypes:
	//	*GetFlowsResponse_Flow
	//	*GetFlowsResponse_NodeStatus
	//	*GetFlowsResponse_LostEvents
	ResponseTypes isGetFlowsResponse_ResponseTypes `protobuf_oneof:"response_types"`
	// Name of the node where this event was observed.
	NodeName string `protobuf:"bytes,1000,opt,name=node_name,json=nodeName,proto3" json:"node_name,omitempty"`
	// Timestamp at which this event was observed.
	Time *timestamp.Timestamp `protobuf:"bytes,1001,opt,name=time,proto3" json:"time,omitempty"`
	// contains filtered or unexported fields
}

GetFlowsResponse contains either a flow or a protocol message.

func (*GetFlowsResponse) Descriptor deprecated

func (*GetFlowsResponse) Descriptor() ([]byte, []int)

Deprecated: Use GetFlowsResponse.ProtoReflect.Descriptor instead.

func (*GetFlowsResponse) GetFlow

func (x *GetFlowsResponse) GetFlow() *flow.Flow

func (*GetFlowsResponse) GetLostEvents

func (x *GetFlowsResponse) GetLostEvents() *flow.LostEvent

func (*GetFlowsResponse) GetNodeName

func (x *GetFlowsResponse) GetNodeName() string

func (*GetFlowsResponse) GetNodeStatus

func (x *GetFlowsResponse) GetNodeStatus() *relay.NodeStatusEvent

func (*GetFlowsResponse) GetResponseTypes

func (m *GetFlowsResponse) GetResponseTypes() isGetFlowsResponse_ResponseTypes

func (*GetFlowsResponse) GetTime

func (x *GetFlowsResponse) GetTime() *timestamp.Timestamp

func (*GetFlowsResponse) MarshalJSON

func (msg *GetFlowsResponse) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler

func (*GetFlowsResponse) ProtoMessage

func (*GetFlowsResponse) ProtoMessage()

func (*GetFlowsResponse) ProtoReflect

func (x *GetFlowsResponse) ProtoReflect() protoreflect.Message

func (*GetFlowsResponse) Reset

func (x *GetFlowsResponse) Reset()

func (*GetFlowsResponse) String

func (x *GetFlowsResponse) String() string

func (*GetFlowsResponse) UnmarshalJSON

func (msg *GetFlowsResponse) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler

func (*GetFlowsResponse) Validate added in v1.8.0

func (m *GetFlowsResponse) Validate() error

Validate checks the field values on GetFlowsResponse with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.

type GetFlowsResponseValidationError added in v1.8.0

type GetFlowsResponseValidationError struct {
	// contains filtered or unexported fields
}

GetFlowsResponseValidationError is the validation error returned by GetFlowsResponse.Validate if the designated constraints aren't met.

func (GetFlowsResponseValidationError) Cause added in v1.8.0

Cause function returns cause value.

func (GetFlowsResponseValidationError) Error added in v1.8.0

Error satisfies the builtin error interface

func (GetFlowsResponseValidationError) ErrorName added in v1.8.0

ErrorName returns error name.

func (GetFlowsResponseValidationError) Field added in v1.8.0

Field function returns field value.

func (GetFlowsResponseValidationError) Key added in v1.8.0

Key function returns key value.

func (GetFlowsResponseValidationError) Reason added in v1.8.0

Reason function returns reason value.

type GetFlowsResponse_Flow

type GetFlowsResponse_Flow struct {
	Flow *flow.Flow `protobuf:"bytes,1,opt,name=flow,proto3,oneof"`
}

type GetFlowsResponse_LostEvents

type GetFlowsResponse_LostEvents struct {
	// lost_events informs clients about events which got dropped due to
	// a Hubble component being unavailable
	LostEvents *flow.LostEvent `protobuf:"bytes,3,opt,name=lost_events,json=lostEvents,proto3,oneof"`
}

type GetFlowsResponse_NodeStatus

type GetFlowsResponse_NodeStatus struct {
	// node_status informs clients about the state of the nodes
	// participating in this particular GetFlows request.
	NodeStatus *relay.NodeStatusEvent `protobuf:"bytes,2,opt,name=node_status,json=nodeStatus,proto3,oneof"`
}

type HTTP

type HTTP = flow.HTTP

type HTTPHeader

type HTTPHeader = flow.HTTPHeader

type ICMPv4

type ICMPv4 = flow.ICMPv4

type ICMPv6

type ICMPv6 = flow.ICMPv6

type IP

type IP = flow.IP

type IPVersion

type IPVersion = flow.IPVersion

type Kafka

type Kafka = flow.Kafka

type L7FlowType

type L7FlowType = flow.L7FlowType

type Layer4

type Layer4 = flow.Layer4

type Layer4_ICMPv4

type Layer4_ICMPv4 = flow.Layer4_ICMPv4

type Layer4_ICMPv6

type Layer4_ICMPv6 = flow.Layer4_ICMPv6

type Layer4_TCP

type Layer4_TCP = flow.Layer4_TCP

type Layer4_UDP

type Layer4_UDP = flow.Layer4_UDP

type Layer7

type Layer7 = flow.Layer7

type Layer7_Dns

type Layer7_Dns = flow.Layer7_Dns

type Layer7_Http

type Layer7_Http = flow.Layer7_Http

type Layer7_Kafka

type Layer7_Kafka = flow.Layer7_Kafka

type LostEvent

type LostEvent = flow.LostEvent

type LostEventSource

type LostEventSource = flow.LostEventSource

type ObserverClient

type ObserverClient interface {
	// GetFlows returning structured data, meant to eventually obsolete GetLastNFlows.
	GetFlows(ctx context.Context, in *GetFlowsRequest, opts ...grpc.CallOption) (Observer_GetFlowsClient, error)
	// ServerStatus returns some details about the running hubble server.
	ServerStatus(ctx context.Context, in *ServerStatusRequest, opts ...grpc.CallOption) (*ServerStatusResponse, error)
}

ObserverClient is the client API for Observer service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

func NewObserverClient

func NewObserverClient(cc grpc.ClientConnInterface) ObserverClient

type ObserverServer

type ObserverServer interface {
	// GetFlows returning structured data, meant to eventually obsolete GetLastNFlows.
	GetFlows(*GetFlowsRequest, Observer_GetFlowsServer) error
	// ServerStatus returns some details about the running hubble server.
	ServerStatus(context.Context, *ServerStatusRequest) (*ServerStatusResponse, error)
}

ObserverServer is the server API for Observer service. All implementations should embed UnimplementedObserverServer for forward compatibility

type Observer_GetFlowsClient

type Observer_GetFlowsClient interface {
	Recv() (*GetFlowsResponse, error)
	grpc.ClientStream
}

type Observer_GetFlowsServer

type Observer_GetFlowsServer interface {
	Send(*GetFlowsResponse) error
	grpc.ServerStream
}

type Payload added in v1.8.0

type Payload = flow.Payload

type ServerStatusRequest

type ServerStatusRequest struct {
	// contains filtered or unexported fields
}

func (*ServerStatusRequest) Descriptor deprecated

func (*ServerStatusRequest) Descriptor() ([]byte, []int)

Deprecated: Use ServerStatusRequest.ProtoReflect.Descriptor instead.

func (*ServerStatusRequest) MarshalJSON

func (msg *ServerStatusRequest) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler

func (*ServerStatusRequest) ProtoMessage

func (*ServerStatusRequest) ProtoMessage()

func (*ServerStatusRequest) ProtoReflect

func (x *ServerStatusRequest) ProtoReflect() protoreflect.Message

func (*ServerStatusRequest) Reset

func (x *ServerStatusRequest) Reset()

func (*ServerStatusRequest) String

func (x *ServerStatusRequest) String() string

func (*ServerStatusRequest) UnmarshalJSON

func (msg *ServerStatusRequest) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler

func (*ServerStatusRequest) Validate added in v1.8.0

func (m *ServerStatusRequest) Validate() error

Validate checks the field values on ServerStatusRequest with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.

type ServerStatusRequestValidationError added in v1.8.0

type ServerStatusRequestValidationError struct {
	// contains filtered or unexported fields
}

ServerStatusRequestValidationError is the validation error returned by ServerStatusRequest.Validate if the designated constraints aren't met.

func (ServerStatusRequestValidationError) Cause added in v1.8.0

Cause function returns cause value.

func (ServerStatusRequestValidationError) Error added in v1.8.0

Error satisfies the builtin error interface

func (ServerStatusRequestValidationError) ErrorName added in v1.8.0

ErrorName returns error name.

func (ServerStatusRequestValidationError) Field added in v1.8.0

Field function returns field value.

func (ServerStatusRequestValidationError) Key added in v1.8.0

Key function returns key value.

func (ServerStatusRequestValidationError) Reason added in v1.8.0

Reason function returns reason value.

type ServerStatusResponse

type ServerStatusResponse struct {

	// number of currently captured flows
	// In a multi-node context, this is the cumulative count of all captured
	// flows.
	NumFlows uint64 `protobuf:"varint,1,opt,name=num_flows,json=numFlows,proto3" json:"num_flows,omitempty"`
	// maximum capacity of the ring buffer
	// In a multi-node context, this is the aggregation of all ring buffers
	// capacities.
	MaxFlows uint64 `protobuf:"varint,2,opt,name=max_flows,json=maxFlows,proto3" json:"max_flows,omitempty"`
	// total amount of flows observed since the observer was started
	// In a multi-node context, this is the aggregation of all flows that have
	// been seen.
	SeenFlows uint64 `protobuf:"varint,3,opt,name=seen_flows,json=seenFlows,proto3" json:"seen_flows,omitempty"`
	// uptime of this observer instance in nanoseconds
	// In a multi-node context, this field corresponds to the uptime of the
	// longest living instance.
	UptimeNs uint64 `protobuf:"varint,4,opt,name=uptime_ns,json=uptimeNs,proto3" json:"uptime_ns,omitempty"`
	// number of nodes for which a connection is established
	NumConnectedNodes *wrappers.UInt32Value `protobuf:"bytes,5,opt,name=num_connected_nodes,json=numConnectedNodes,proto3" json:"num_connected_nodes,omitempty"`
	// number of nodes for which a connection cannot be established
	NumUnavailableNodes *wrappers.UInt32Value `protobuf:"bytes,6,opt,name=num_unavailable_nodes,json=numUnavailableNodes,proto3" json:"num_unavailable_nodes,omitempty"`
	// list of nodes that are unavailable
	// This list may not be exhaustive.
	UnavailableNodes []string `protobuf:"bytes,7,rep,name=unavailable_nodes,json=unavailableNodes,proto3" json:"unavailable_nodes,omitempty"`
	// contains filtered or unexported fields
}

func (*ServerStatusResponse) Descriptor deprecated

func (*ServerStatusResponse) Descriptor() ([]byte, []int)

Deprecated: Use ServerStatusResponse.ProtoReflect.Descriptor instead.

func (*ServerStatusResponse) GetMaxFlows

func (x *ServerStatusResponse) GetMaxFlows() uint64

func (*ServerStatusResponse) GetNumConnectedNodes

func (x *ServerStatusResponse) GetNumConnectedNodes() *wrappers.UInt32Value

func (*ServerStatusResponse) GetNumFlows

func (x *ServerStatusResponse) GetNumFlows() uint64

func (*ServerStatusResponse) GetNumUnavailableNodes

func (x *ServerStatusResponse) GetNumUnavailableNodes() *wrappers.UInt32Value

func (*ServerStatusResponse) GetSeenFlows

func (x *ServerStatusResponse) GetSeenFlows() uint64

func (*ServerStatusResponse) GetUnavailableNodes

func (x *ServerStatusResponse) GetUnavailableNodes() []string

func (*ServerStatusResponse) GetUptimeNs

func (x *ServerStatusResponse) GetUptimeNs() uint64

func (*ServerStatusResponse) MarshalJSON

func (msg *ServerStatusResponse) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler

func (*ServerStatusResponse) ProtoMessage

func (*ServerStatusResponse) ProtoMessage()

func (*ServerStatusResponse) ProtoReflect

func (x *ServerStatusResponse) ProtoReflect() protoreflect.Message

func (*ServerStatusResponse) Reset

func (x *ServerStatusResponse) Reset()

func (*ServerStatusResponse) String

func (x *ServerStatusResponse) String() string

func (*ServerStatusResponse) UnmarshalJSON

func (msg *ServerStatusResponse) UnmarshalJSON(b []byte) error

UnmarshalJSON implements json.Unmarshaler

func (*ServerStatusResponse) Validate added in v1.8.0

func (m *ServerStatusResponse) Validate() error

Validate checks the field values on ServerStatusResponse with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.

type ServerStatusResponseValidationError added in v1.8.0

type ServerStatusResponseValidationError struct {
	// contains filtered or unexported fields
}

ServerStatusResponseValidationError is the validation error returned by ServerStatusResponse.Validate if the designated constraints aren't met.

func (ServerStatusResponseValidationError) Cause added in v1.8.0

Cause function returns cause value.

func (ServerStatusResponseValidationError) Error added in v1.8.0

Error satisfies the builtin error interface

func (ServerStatusResponseValidationError) ErrorName added in v1.8.0

ErrorName returns error name.

func (ServerStatusResponseValidationError) Field added in v1.8.0

Field function returns field value.

func (ServerStatusResponseValidationError) Key added in v1.8.0

Key function returns key value.

func (ServerStatusResponseValidationError) Reason added in v1.8.0

Reason function returns reason value.

type Service

type Service = flow.Service

type TCP

type TCP = flow.TCP

type TCPFlags

type TCPFlags = flow.TCPFlags

type TraceObservationPoint

type TraceObservationPoint = flow.TraceObservationPoint

type TrafficDirection

type TrafficDirection = flow.TrafficDirection

type UDP

type UDP = flow.UDP

type UnimplementedObserverServer

type UnimplementedObserverServer struct {
}

UnimplementedObserverServer should be embedded to have forward compatible implementations.

func (*UnimplementedObserverServer) GetFlows

func (*UnimplementedObserverServer) ServerStatus

type Verdict

type Verdict = flow.Verdict

Jump to

Keyboard shortcuts

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