TI's INA231 and TMP512/TMP513 power monitoring chips have been in my go-to device collection for some time. These chips measure bus voltage up to 26 volts and voltage across a high-side or low-side shunt resistor to measure current. Additionally, they feature a built-in temperature sensor and the TMP chips can support external diode or transistor based PN temperature sensors.
I have built a thermocouple measurement circuit using the TMP512 as the shunt-voltage ADC range nicely matches the output voltage of a thermocouple and the temperature sensor provides cold-junction compensation.
A limitation of the INA231 and TMP chips is the maximum voltage range. I have an industrial UPS operating from 24 volts; the charging voltage exceeds the 26v range of these chips.
TI recently introduced similar chips that will handle up to 85 volts, and sometime back versions to handle up to 36 volts. If you have a high-voltage DC supply to monitor, these chips are ideal. Oh yeah, one other handy feature - these chips are happy being connected to power (i.e., the monitored power) while the chip is not powered.
TMP512/TMP513 - 26V max
INA231 - 26V max
INA260 - 36V max
INA237 - 85V, 16 bit
INA228 - 85V, 20 bit
INA238 - 85V, 16 bit with alert output