app_info.go 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. package modelse
  2. import "time"
  3. const (
  4. APP_NAME = "app_name"
  5. APP_ID = "app_id"
  6. AGENT_ID = "agent_id"
  7. INSTANCE_ID = "instance_id"
  8. )
  9. type APP_TYPE int
  10. const (
  11. APP_WAIT APP_TYPE = iota
  12. APP_SUCCESS
  13. APP_UNINSTALL
  14. )
  15. func (s APP_TYPE) String() string {
  16. switch s {
  17. case APP_SUCCESS:
  18. return "SUCCESS"
  19. case APP_UNINSTALL:
  20. return "UNINSTALL"
  21. default:
  22. return "APP_WAIT"
  23. }
  24. }
  25. type AppInfo struct {
  26. AppName string `json:"app_name"`
  27. AppIdHash INT_HASH_ID `json:"app_id_hash"`
  28. InstanceIdHash INT_HASH_ID `json:"instance_id_hash"`
  29. AgentId int64 `json:"agent_id"`
  30. Sn string `json:"sn"`
  31. Sport int `json:"sport"`
  32. ServiceType string `json:"service_name"`
  33. CodeType CodeType `json:"code_type"`
  34. EBPFProcInfo *EbpfProcInfo `json:"ebpf_proc_info"`
  35. RegisterAt int64 `json:"register_at"`
  36. UpdateAt int64 `json:"update_at"`
  37. Status APP_TYPE `json:"status"`
  38. Version string `json:"version"`
  39. }
  40. func (a *AppInfo) UpdateAtTime() {
  41. a.UpdateAt = time.Now().Unix()
  42. }
  43. func (a *AppInfo) AppSuccess() {
  44. if a.Status != APP_SUCCESS {
  45. a.Status = APP_SUCCESS
  46. a.UpdateAtTime()
  47. }
  48. }
  49. func (a *AppInfo) AppUninstall() {
  50. a.Status = APP_UNINSTALL
  51. a.UpdateAtTime()
  52. }