Notice
Recent Posts
Recent Comments
Link
투케이2K
138. (swift5/xcode) #file, #line, #function 현재 수행 중인 로그 정보 클래스 명칭 및 메소드 명칭, 코드 라인 확인 - Log Details 본문
Swift
138. (swift5/xcode) #file, #line, #function 현재 수행 중인 로그 정보 클래스 명칭 및 메소드 명칭, 코드 라인 확인 - Log Details
투케이2K 2023. 10. 2. 12:48[개발 환경 설정]
개발 툴 : XCODE
개발 언어 : SWIFT5
[소스 코드]
// -----------------------------------------------------------------------------------------
// MARK: - [SEARCH FAST] : [코드] : [로그 정보 출력]
// -----------------------------------------------------------------------------------------
// S_Log._D_(description: "이름 정보", data: [String(describing: "투케이")])
// -----------------------------------------------------------------------------------------
static func _D_(filename: String = #file, _ line: Int = #line, _ funcname: String = #function, description: String?, data:Array<String>?){
if S_FinalFlag.LOG_SHOW_FLAG == true { // [디버그 환경 및 개발 모드일 경우 만]
// [클래스 명칭 확인]
var className = ""
className = className + String(describing: "\(filename)")
if className.contains("/") == true {
let arr = className.split(separator: "/")
className = String(describing: "\(arr[arr.count-1])")
}
className = className + " :: " + String(describing: "\(funcname)")
className = className + " :: " + String(describing: "\(line)")
// [현재 날짜 및 시간 확인]
let nowDate = Date() // 현재의 Date 날짜 및 시간
let dateFormatter = DateFormatter() // Date 포맷 객체 선언
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss" // Date 포맷 타입 지정
let date_string = dateFormatter.string(from: nowDate) // 포맷된 형식 문자열로 반환
print("")
print("")
print("================================================================")
print("LOG :: CLASS PLACE :: \(className)")
print("-------------------------------------------------")
print("LOG :: NOW TIME :: \(date_string)")
// [설명 출력]
if description != nil && String(describing:description) != ""
&& String(describing:description) != "null" && String(describing:description) != "nil"
&& description?.isEmpty == false && description?.count ?? 0 > 0{
print("-------------------------------------------------")
print("LOG :: DESCRIPTION :: \(String(describing:description ?? ""))")
}
// [데이터 출력]
if data != nil && data?.isEmpty == false && data?.count ?? 0 > 0{
for i in stride(from: 0, through: data!.count-1, by: 1) {
print("-------------------------------------------------")
print("LOG :: \(String(describing:data![i]))")
}
}
print("================================================================")
print("")
print("")
}
}
[결과 출력]
================================================================
LOG :: CLASS PLACE :: AppDelegate.swift :: application(_:didFinishLaunchingWithOptions:) :: 70
-------------------------------------------------
LOG :: NOW TIME :: 2023-10-02 12:40:37
-------------------------------------------------
LOG :: DESCRIPTION :: 앱 프로세스 완료 및 앱 실행 실시
-------------------------------------------------
LOG :: 빌드 타입 구분
-------------------------------------------------
LOG :: 프리퍼런스 데이터 초기화 수행
================================================================
반응형
'Swift' 카테고리의 다른 글
Comments