Я хочу использовать $ dateToString, чтобы мои данные были разбиты по дням, а также я хочу сгруппировать по именам журналов.
Группировка по дате и имени журнала работает, если я не использую $ dateToString, но затем каждый запись разделяется по каждому указанному c времени, так как даты хранятся в формате по умолчанию для mongos («2020-04-21T02: 06: 26.139Z»
Кажется, проблема связана с попыткой использовать $ dateToString для преобразовать дату, имея другой идентификатор
Это работает само по себе (группы по дням)
Entry.aggregate(
[{
$group: {
_id: { $dateToString: { format: "%d-%m-%Y", date: "$date" } },
},},],
Это то, что я хочу сделать, но это не работает
Entry.aggregate(
[{
$group: {
_id: { $dateToString: { format: "%d-%m-%Y", date: "$date" }, logname: "$logname"},
},},],
Это работает без вышеуказанного преобразования $ date (группы по каждому указанному c время и имя журнала)
Entry.aggregate(
[{
$group: {
_id: { date: "$date", logname: "$logname" },
},},],
Ошибка
"errmsg": "An object representing an expression must have exactly one field: { $dateToString: { format: \"%d-%m-%Y\", date: \"$date\" }, logname: \"$logname\" }",