self.log does not work in on_train_batch_start/end hooks
🐛 Bug

Logging with self.log doesn't seem to work properly in the on_train_batch_start and on_train_batch_end model hooks. Specifically:

when put in on_train_batch_start it crashes because self._current_fx_name is set to validation_epoch_endwhich seems like incorrect behaviour. (It seems like it should be set to training_step)
when put in on_train_batch_end it just seems to never log anything (the example I wrote tries to log to the progress bar but nothing is logged). It is also not present in tensorboard when I run this code locally.

Is this intended behaviour? The docs suggest that self.log might only work in (training|validation)_step_(end)? methods, but it also says explicitly that self.log can be called from anywhere in the module. If this is the intended behaviour then I think the documentation could be clarified.
Link to boring model showcasing the bug 

To Reproduce

See colab
Expected behavior

In the colab, both metric1 and metric2 should appear in the progress bar, but only metric1 does. metric2 is logged in on_train_batch_start (similar results occur with on_train_batch_end)
Environment


IDE: Colab


Colab Notebook:


CUDA:
	- GPU:
		- Tesla T4
	- available:         True
	- version:           10.1
* Packages:
	- numpy:             1.18.5
	- pyTorch_debug:     True
	- pyTorch_version:   1.7.0+cu101
	- pytorch-lightning: 1.0.5
	- tqdm:              4.41.1
* System:
	- OS:                Linux
	- architecture:
		- 64bit
		- 
	- processor:         x86_64
	- python:            3.6.9
	- version:           #1 SMP Thu Jul 23 08:00:38 PDT 2020

You can get the script and run it with: