This commit is contained in:
33
certs/ca.crt
Normal file
33
certs/ca.crt
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
-----BEGIN CERTIFICATE-----
|
||||||
|
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
|
||||||
|
7aRY
|
||||||
|
-----END CERTIFICATE-----
|
||||||
67
convert_spans.py
Normal file
67
convert_spans.py
Normal file
@ -0,0 +1,67 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
|
"""views.py의 span 패턴을 새로운 방식으로 변환"""
|
||||||
|
import re
|
||||||
|
|
||||||
|
with open('users/views.py', 'r') as f:
|
||||||
|
content = f.read()
|
||||||
|
|
||||||
|
# 1. set_span_attributes(span, request, ...) -> enrich_span(request, ...)
|
||||||
|
content = re.sub(
|
||||||
|
r'set_span_attributes\(span, request, request\.user\)',
|
||||||
|
'enrich_span(request, request.user)',
|
||||||
|
content
|
||||||
|
)
|
||||||
|
content = re.sub(
|
||||||
|
r'set_span_attributes\(span, request\)',
|
||||||
|
'enrich_span(request)',
|
||||||
|
content
|
||||||
|
)
|
||||||
|
|
||||||
|
# 2. span.add_event(...) -> span_event(...)
|
||||||
|
content = re.sub(
|
||||||
|
r'span\.add_event\(',
|
||||||
|
'span_event(',
|
||||||
|
content
|
||||||
|
)
|
||||||
|
|
||||||
|
# 3. span.set_attribute(...) -> span_set_attribute(...)
|
||||||
|
content = re.sub(
|
||||||
|
r'span\.set_attribute\(',
|
||||||
|
'span_set_attribute(',
|
||||||
|
content
|
||||||
|
)
|
||||||
|
|
||||||
|
# 4. with tracer.start_as_current_span("...") as span: 패턴 변환
|
||||||
|
# 여러 줄에 걸친 패턴도 처리
|
||||||
|
def replace_span_block(match):
|
||||||
|
indent = match.group(1)
|
||||||
|
span_name = match.group(2)
|
||||||
|
# operation 이름 추출 (공백, 따옴표 제거)
|
||||||
|
op_name = span_name.strip().strip('"\'')
|
||||||
|
# 짧은 이름으로 변환
|
||||||
|
op_name = op_name.replace(" POST", ".post").replace(" GET", ".get")
|
||||||
|
op_name = op_name.replace(" PUT", ".put").replace(" PATCH", ".patch")
|
||||||
|
op_name = op_name.replace(" DELETE", ".delete")
|
||||||
|
op_name = op_name.replace("View", "").lower()
|
||||||
|
return f'{indent}enrich_span(request, operation="{op_name}")'
|
||||||
|
|
||||||
|
# 단일 줄 패턴
|
||||||
|
content = re.sub(
|
||||||
|
r'^(\s*)with tracer\.start_as_current_span\(([^)]+)\) as span:\s*(?:#.*)?$',
|
||||||
|
replace_span_block,
|
||||||
|
content,
|
||||||
|
flags=re.MULTILINE
|
||||||
|
)
|
||||||
|
|
||||||
|
# 여러 줄에 걸친 패턴 (줄바꿈 포함)
|
||||||
|
content = re.sub(
|
||||||
|
r'^(\s*)with tracer\.start_as_current_span\(\s*\n\s*([^)]+)\s*\) as span:\s*(?:#.*)?$',
|
||||||
|
replace_span_block,
|
||||||
|
content,
|
||||||
|
flags=re.MULTILINE
|
||||||
|
)
|
||||||
|
|
||||||
|
with open('users/views.py', 'w') as f:
|
||||||
|
f.write(content)
|
||||||
|
|
||||||
|
print("변환 완료")
|
||||||
1814
users/views.py.bak
Normal file
1814
users/views.py.bak
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user