I'm not sure what you mean be "the visible code" - you have the source for the entire HAL_UART code (i.e. the file in which you found the source for HAL_UART_Transmit_DMA() above). Search that file for all mentions of "HAL_UART_ErrorCallBack()". Functions that start with underscores, like __HAL_DMA_Enable_IT() are actually macros that are defined in the associated .h file (i.e. stm32l0xx_hal_uart.h or something like that).
As an aside - if your editor does not have a "search all files in this project" function, or a "go to the definitiion of this function", or a "show me all the references to this function" - get a new editor or IDE. Or learn how to use these features in the editor that you are using. They will save you SOOOOOO much time.
Not having debugger access on your board makes things more difficult. Time to go back to old school debugging. A first step would be to add code to your HAL_UART_ErrorCallBack() to dump all of the UART and DMA control and status registers to a debug serial port (which I hope you have). Then look and see what kind of error is indicated. If that doesn't help, you will have to (temporarily) change the code in HAL UART source whereever the error callback is called to somehow tell your program what error happened.