导入模块
import traceback
使用方法
将traceback.format_stack()写入你想添加的地方
示例
def forward(self, x):
import traceback
print('Load data called from:')
print(traceback.format_stack())
self.weight.data *= self.mask
return super().forward(x)
当我运行train.py的时候就会调用这段代码的forward方法,它将输出当前的堆栈信息。
[' File "<string>", line 1, in <module>\n', ' File "C:\\xx\\Anaconda\\anaconda\\envs\\Dncnn\\lib\\multiprocessing\\spawn.py", line 116, in spawn_main\n exitcode = _main(fd, parent_sentinel)\n', ' File "C:\\xx\\Anaconda\\anaconda\\envs\\Dncnn\\lib\\multiprocessing\\spawn.py", line 129, in _main\n return self._bootstrap(parent_sentinel)\n', ' File "C:\\xx\\Anaconda\\anaconda\\envs\\Dncnn\\lib\\multiprocessing\\process.py", line 315, in _bootstrap\n self.run()\n', ' File "C:\\xx\\Anaconda\\anaconda\\envs\\Dncnn\\lib\\multiprocessing\\process.py", line 108, in run\n self._target(*self._args, **self._kwargs)\n', ' File "C:\\xx\\Anaconda\\anaconda\\envs\\Dncnn\\lib\\site-packages\\torch\\utils\\data\\_utils\\worker.py", line 308, in _worker_loop\n data = fetcher.fetch(index)\n', ' File "C:\\xx\\Anaconda\\anaconda\\envs\\Dncnn\\lib\\site-packages\\torch\\utils\\data\\_utils\\fetch.py", line 51, in fetch\n data = [self.dataset[idx] for idx in possibly_batched_index]\n', ' File "C:\\xx\\Anaconda\\anaconda\\envs\\Dncnn\\lib\\site-packages\\torch\\utils\\data\\_utils\\fetch.py", line 51, in <listcomp>\n data = [self.dataset[idx] for idx in possibly_batched_index]\n', ' File "C:\\xx\\xx\\MM-BSN-main\\MM-BSN-main\\DataDeal\\DatasetBase.py", line 154, in __getitem__\n print(traceback.format_stack())\n']