code: func (s *Admin) TSDBSnapshot(_ context.Context, req *pb.TSDBSnapshotRequest) (*pb.TSDBSnapshotResponse, error) {
  	db := s.db()
  	if db == nil {
  		return nil, errTSDBNotReady
  	}
  	var (
  		snapdir = filepath.Join(db.Dir(), "snapshots")
  		name    = fmt.Sprintf("%s-%x",
  			time.Now().UTC().Format("20060102T150405Z0700"),
  			rand.Int())
  		dir = filepath.Join(snapdir, name)
  	)
  	if err := os.MkdirAll(dir, 0777); err != nil {
  		return nil, status.Errorf(codes.Internal, "created snapshot directory: %s", err)
  	}
  	if err := db.Snapshot(dir, !req.SkipHead); err != nil {
  		return nil, status.Errorf(codes.Internal, "create snapshot: %s", err)
  	}
  	return &pb.TSDBSnapshotResponse{Name: name}, nil
  }
docs: // TSDBSnapshot implements pb.AdminServer.