( logObject: LoggableEvent | Record<string, any>, maxDocumentLength: number = DEFAULT_MAX_DOCUMENT_LENGTH )
| 675 | |
| 676 | /** @internal */ |
| 677 | export function defaultLogTransform( |
| 678 | logObject: LoggableEvent | Record<string, any>, |
| 679 | maxDocumentLength: number = DEFAULT_MAX_DOCUMENT_LENGTH |
| 680 | ): Omit<Log, 's' | 't' | 'c'> { |
| 681 | let log: Omit<Log, 's' | 't' | 'c'> = Object.create(null); |
| 682 | |
| 683 | switch (logObject.name) { |
| 684 | case SERVER_SELECTION_STARTED: |
| 685 | log = attachServerSelectionFields(log, logObject, maxDocumentLength); |
| 686 | return log; |
| 687 | case SERVER_SELECTION_FAILED: |
| 688 | log = attachServerSelectionFields(log, logObject, maxDocumentLength); |
| 689 | log.failure = logObject.failure?.message; |
| 690 | return log; |
| 691 | case SERVER_SELECTION_SUCCEEDED: |
| 692 | log = attachServerSelectionFields(log, logObject, maxDocumentLength); |
| 693 | log.serverHost = logObject.serverHost; |
| 694 | log.serverPort = logObject.serverPort; |
| 695 | return log; |
| 696 | case WAITING_FOR_SUITABLE_SERVER: |
| 697 | log = attachServerSelectionFields(log, logObject, maxDocumentLength); |
| 698 | log.remainingTimeMS = logObject.remainingTimeMS; |
| 699 | return log; |
| 700 | case COMMAND_STARTED: |
| 701 | log = attachCommandFields(log, logObject); |
| 702 | log.message = 'Command started'; |
| 703 | log.command = stringifyWithMaxLen(logObject.command, maxDocumentLength, { relaxed: true }); |
| 704 | log.databaseName = logObject.databaseName; |
| 705 | return log; |
| 706 | case COMMAND_SUCCEEDED: |
| 707 | log = attachCommandFields(log, logObject); |
| 708 | log.message = 'Command succeeded'; |
| 709 | log.durationMS = logObject.duration; |
| 710 | log.reply = stringifyWithMaxLen(logObject.reply, maxDocumentLength, { relaxed: true }); |
| 711 | return log; |
| 712 | case COMMAND_FAILED: |
| 713 | log = attachCommandFields(log, logObject); |
| 714 | log.message = 'Command failed'; |
| 715 | log.durationMS = logObject.duration; |
| 716 | log.failure = logObject.failure?.message ?? '(redacted)'; |
| 717 | return log; |
| 718 | case CONNECTION_POOL_CREATED: |
| 719 | log = attachConnectionFields(log, logObject); |
| 720 | log.message = 'Connection pool created'; |
| 721 | if (logObject.options) { |
| 722 | const { maxIdleTimeMS, minPoolSize, maxPoolSize, maxConnecting, waitQueueTimeoutMS } = |
| 723 | logObject.options; |
| 724 | log = { |
| 725 | ...log, |
| 726 | maxIdleTimeMS, |
| 727 | minPoolSize, |
| 728 | maxPoolSize, |
| 729 | maxConnecting, |
| 730 | waitQueueTimeoutMS |
| 731 | }; |
| 732 | } |
| 733 | return log; |
| 734 | case CONNECTION_POOL_READY: |
no test coverage detected