collect_map.go 1.2 KB

123456789101112131415161718192021222324252627282930313233
  1. package service
  2. import (
  3. "cicv-data-closedloop/aarch64/pji/common/config"
  4. "cicv-data-closedloop/common/config/c_log"
  5. "cicv-data-closedloop/common/util"
  6. "os"
  7. )
  8. func CollectMap() {
  9. // rosbag record -O /root/cicv-data-closedloop/map_data.bag -l 1 /map
  10. ossMapBagObjectKey := config.LocalConfig.OssBasePrefix + config.LocalConfig.EquipmentNo + "/map.bag"
  11. var command []string
  12. command = append(command, "record")
  13. command = append(command, "-O "+config.CloudConfig.MapBagPath)
  14. command = append(command, "-l 1")
  15. command = append(command, "/map")
  16. _, s, err := util.ExecuteWithEnvAndDir(config.RosbagEnvs, config.CloudConfig.BagDataDir, config.RosbagPath, command...)
  17. if err != nil {
  18. c_log.GlobalLogger.Error("程序异常退出。采集地图", command, "出错:", s, "----", err)
  19. os.Exit(-1)
  20. }
  21. config.OssMutex.Lock()
  22. err = config.OssBucket.PutObjectFromFile(ossMapBagObjectKey, config.CloudConfig.MapBagPath)
  23. config.OssMutex.Unlock()
  24. if err != nil {
  25. c_log.GlobalLogger.Error("程序异常退出。上传地图包", config.CloudConfig.MapBagPath, "->", ossMapBagObjectKey, "出错:", err)
  26. os.Exit(-1)
  27. }
  28. c_log.GlobalLogger.Error("上传地图包", config.CloudConfig.MapBagPath, "------", ossMapBagObjectKey, "成功。")
  29. }