Merge pull request #9 from mrproliu/support-cds-to-satellite

Support Configuration Discovery Service data for satellite data
tree: 39151263435041a5e2b28d2632564e0a54478061
  1. .github/
  2. collect/
  3. query/
  4. satellite/
  5. scripts/
  6. .asf.yaml
  7. .gitignore
  8. dependencies.sh
  9. go.mod
  10. go.sum
  11. gqlgen.yml
  12. LICENSE
  13. Makefile
  14. NOTICE
  15. README.md
README.md

SkyWalking Go APIs

This repository contains the Go files generated from the sniff protocol(data collect protocol, the satellite protocol) and the query protocol for convenient use.

You can use the following commands to install this module.

go get skywalking.apache.org/repo/goapi

Data Sniff Protocol

To use the Go files generated from the data collect protocol and the satellite protocol, use the import path skywalking.apache.org/repo/goapi/collect and skywalking.apache.org/repo/goapi/satellite, for example,

package main

import (
	"fmt"
	"time"

	v3 "skywalking.apache.org/repo/goapi/collect/event/v3"
	v1 "skywalking.apache.org/repo/goapi/satellite/data/v1"
)

func main() {
	event := &v3.Event{
		Uuid:       "",
		Source:     nil,
		Name:       "",
		Type:       0,
		Message:    "",
		Parameters: nil,
		StartTime:  0,
		EndTime:    0,
	}

	sniffData := &v1.SniffData{
		Timestamp: time.Now().Unix() / 1e6,
		Name:      "Satellite_event",
		Type:      v1.SniffType_EventType,
		Meta:      nil,
		Remote:    true,
		Data: &v1.SniffData_Event{
			Event: event,
		},
	}
	fmt.Printf("+%v", sniffData)
}

Query Protocol

To use the Go files generated from the query protocol, use the import path skywalking.apache.org/repo/goapi/query, for example,

package main

import (
	"fmt"

	"skywalking.apache.org/repo/goapi/query"
)

func main() {
	events := query.Events{
		Events: nil,
		Total:  0,
	}

	fmt.Printf("+%v", events)
}

Development

To update this repo, update the commit sha in the dependencies.sh file, and run make to regenerate the Go files, then commit and open a pull request.