collect_map.go 1.4 KB

123456789101112131415161718192021222324252627282930313233343536
  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, config.CloudConfig.MapBagPath)
  15. command = append(command, "-l")
  16. command = append(command, "1")
  17. command = append(command, "/map")
  18. _, s, err := util.ExecuteWithEnvAndDir(config.RosbagEnvs, config.CloudConfig.BagDataDir, config.RosbagPath, command...)
  19. if err != nil {
  20. c_log.GlobalLogger.Error("程序异常退出。采集地图", command, "出错:", s, "----", err)
  21. os.Exit(-1)
  22. }
  23. c_log.GlobalLogger.Error("采集地图包", command, "完成。")
  24. config.OssMutex.Lock()
  25. err = config.OssBucket.PutObjectFromFile(ossMapBagObjectKey, config.CloudConfig.MapBagPath)
  26. config.OssMutex.Unlock()
  27. if err != nil {
  28. c_log.GlobalLogger.Error("程序异常退出。上传地图包", config.CloudConfig.MapBagPath, "->", ossMapBagObjectKey, "出错:", err)
  29. os.Exit(-1)
  30. }
  31. c_log.GlobalLogger.Error("上传地图包", config.CloudConfig.MapBagPath, "------", ossMapBagObjectKey, "成功。")
  32. }