package
0.0.0-20211001231847-69d7c44852f1
Repository: https://github.com/go-ragnaros/soar.git
Documentation: pkg.go.dev
# Functions
ArgConfig get -config arg value from cli.
Caller returns the caller of the function that called it :) https://stackoverflow.com/questions/35212985/is-it-possible-get-information-about-caller-function-in-golang.
Chardet get best match charset.
CheckCharsetByBOM ref: https://en.wikipedia.org/wiki/Byte_order_mark.
ColumnSort 通过散粒度对 colList 进行排序, 散粒度排序由大到小.
FormatDSN 格式化打印DSN.
GetDataTypeBase 获取dataType中的数据类型,忽略长度.
GetDataTypeLength 获取dataType中的数据类型长度.
GetFunctionName 获取调当前函数名.
GoldenDiff 从 gofmt 学来的测试方法 https://medium.com/soon-london/testing-with-golden-files-in-go-7fccc71c43d3.
HandleSignal 当程序卡死的时候,或者由于某些原因程序没有退出,可以通过捕获信号量的形式让程序优雅退出并且清理测试环境.
IsColsPart 判断两个column队列是否是包含关系(包括相等).
JoinColumnsName 将所有的列合并.
JSONFind iterate find name in json.
ListReportTypes 查看所有支持的report-type.
LoggerInit Log配置初始化.
LogIfError 简化if err != nil 打 Error 日志代码长度.
LogIfWarn 简化if err != nil 打 Warn 日志代码长度.
Markdown2HTML markdown 转 HTML 输出.
MarkdownEscape markdown格式转义,原样输出.
MarkdownHTMLHeader markdown 转 HTML 输出时添加 HTML 头.
MergeColumn 将使用到的列按 db->table 组织去重 注意:Column 中的 db, table 信息可能为空,需要提前通过env环境补齐再调用该函数。 @input: 目标列list, 源列list(可以将多个源合并到一个目标列list) @output: 合并后的列list.
NewDB 用于初始化*DB.
NewTable 初始化*TableName.
ParseConfig 加载配置文件和命令行参数.
ParseDSN compatible with old version soar < 0.11.0.
PrintConfiguration for `-print-config` flag.
RemoveBOM remove bom from file.
RemoveDuplicatesItem remove duplicate item from list.
Score SQL评审打分.
SoarVersion soar version information.
SortedKey sort map[string]interface{}, use in range clause.
StringStorageReq String Type Storage Requirements return bytes count.
# Variables
BaseDir 日志打印在binary的根路径.
BlackList 黑名单中的SQL不会被评审.
-version输出信息.
BuiltinCSS 内置HTML风格.
BuiltinJavascript 内置 SQL 美化 Javascript 脚本.
CharSets character bytes per charcharacter bytes per char.
CheckConfig -check-config.
-version输出信息.
Config 默认设置.
-version输出信息.
-version输出信息.
Log 使用 beego 的 log 库.
PrintConfig -print-config.
PrintVersion -print-config.
ReportTypes 命令行-report-type支持的形式.
TestSQLs 测试SQL大集合.
-version输出信息.
# Structs
Column 含有列的定义属性.
Configuration 配置文件定义结构体.
DB 数据库相关的结构体.
Dsn Data source name.
ReportType 元数据结构定义.
Table 含有表的属性.
# Type aliases
KeyType 用于标志每个Key的类别.
Meta 以 'database' 为 key, DB 的 map, 按 db->table->column 组织的元数据.
TableColumns 这个结构体中的元素是有序的 map[db]map[table][]columns.