Skip to content

Commit 1a343ea

Browse files
author
sunhailin
committed
fix error and new version for 1.4.1
1 parent 49fa67d commit 1a343ea

File tree

3 files changed

+19
-14
lines changed

3 files changed

+19
-14
lines changed

CHANGELOG.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
# ChangeLog
22

3+
### version 1.4.1
4+
* fix `AttributeError`[issue#17](https://github.com/sunhailin-Leo/fastapi_profiler/issues/17)
5+
36
### version 1.4.0
47
* add support for speedscope
58

fastapi_profiler/_version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
__version__ = "1.4.0"
1+
__version__ = "1.4.1"
22
__author__ = "sunhailin-Leo"

fastapi_profiler/profiler.py

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -128,11 +128,11 @@ async def get_profiler_result(self):
128128
output_filename=os.path.abspath(html_file_name),
129129
)
130130
else:
131-
html_code = renderer.render(session=self._profiler.last_session)
132-
with codecs.open(html_file_name, "w", "utf-8") as f:
133-
f.write(html_code)
134-
135-
logger.info("Done writing profile to %r", html_file_name)
131+
if self._profiler.last_session:
132+
html_code = renderer.render(session=self._profiler.last_session)
133+
with codecs.open(html_file_name, "w", "utf-8") as f:
134+
f.write(html_code)
135+
logger.info("Done writing profile to %r", html_file_name)
136136
elif self._output_type == "prof":
137137
prof_file_name = self.DEFAULT_PROF_FILENAME
138138
if self._prof_file_name is not None:
@@ -155,10 +155,11 @@ async def get_profiler_result(self):
155155
prof_file_name,
156156
)
157157

158-
renderer = JSONRenderer()
159-
with codecs.open(prof_file_name, "w", "utf-8") as f:
160-
f.write(renderer.render(session=self._profiler.last_session))
161-
logger.info("Done writing profile to %r", prof_file_name)
158+
if self._profiler.last_session:
159+
renderer = JSONRenderer()
160+
with codecs.open(prof_file_name, "w", "utf-8") as f:
161+
f.write(renderer.render(session=self._profiler.last_session))
162+
logger.info("Done writing profile to %r", prof_file_name)
162163
elif self._output_type == "speedscope":
163164
prof_file_name = self.DEFAULT_SPEEDSCOPE_FILENAME
164165
if self._prof_file_name is not None:
@@ -169,7 +170,8 @@ async def get_profiler_result(self):
169170
prof_file_name,
170171
)
171172

172-
renderer = SpeedscopeRenderer()
173-
with codecs.open(prof_file_name, "w", "utf-8") as f:
174-
f.write(renderer.render(session=self._profiler.last_session))
175-
logger.info("Done writing profile to %r", prof_file_name)
173+
if self._profiler.last_session:
174+
renderer = SpeedscopeRenderer()
175+
with codecs.open(prof_file_name, "w", "utf-8") as f:
176+
f.write(renderer.render(session=self._profiler.last_session))
177+
logger.info("Done writing profile to %r", prof_file_name)

0 commit comments

Comments
 (0)