getTag static method
Gets tag with stackIndex
,
how many steps in stacktrace should be taken to grab log call.
Implementation
static String getTag({int stackIndex = 4}) {
final stackTraceList = StackTrace.current.toString().split('\n');
if (stackTraceList.length > stackIndex) {
final lineChunks =
stackTraceList[stackIndex].replaceAll("<anonymous closure>", "<ac>");
if (lineChunks.length > 6) {
final lineParts = lineChunks.split(' ');
if (lineParts.length > 8 && lineParts[6] == 'new') {
// constructor logging
return "${lineParts[6]} ${lineParts[7]}";
} else if (lineParts.length > 6) {
return lineParts[6];
} else {
return _defaultTag;
}
} else {
return _defaultTag;
}
} else {
return _defaultTag; //default
}
}