Я наконец узнал как.Должно быть намного проще получить основные коды ошибок!При обнаружении ошибки я проверяю количество найденных ошибок и в настоящее время беспокоюсь только о первой.Хотя первоначальная ошибка говорит о множественных ошибках, она имеет только одну.Это действительно только для поиска ошибок вставки дубликата или поиска ошибок не найдены.Если есть более простой способ, я хотел бы знать.До тех пор, это то, что я использую, и это прекрасно работает.Дубликат, кстати, 11000.
"Вставка с сеансом завершилась неудачно: несколько ошибок записи: [{ошибки записи: [{E11000 Коллекция ошибок дублирующегося ключа: test.users index: roi_id_1 dup key: {: \" 1\ "}}]}, {}] \ n"
var merr mongo.WriteException
merr = err.(mongo.WriteException)
log.Errorf("Number of errors: %d", len(merr.WriteErrors))
errCode := merr.WriteErrors[0].Code