包含标签 golang articles

统一任务管理cronsun

一、需求 公司写了很多脚本,分别部署在不同的机器上通过crontab进行管理,这里有一个缺点是,没有一个平台可以查看所有的任务执行情况和进行任务统一管理的平台。为此找了一些开源工具进行测试,测试涉及的产品如下: 国内有的有:jobx、Saturn(唯品会)、elasticjob (国内……

Continue reading

NAS数据的自动采集

一、设计 公司设备较多,有时需要匹配一些设备之间的关系。这里以NAS存储和主机之间的关联关系。存储都分了那些lun,给了哪些主机使用?理清这些关系如果全靠纯手工来做是比较繁琐的。这时候可以借助自动化工具+采集脚本,自动完成入库操作即可。定期的跑下任备就行了。 使用df -t nfs输出并排……

Continue reading

Golang urlencode与urldecode编码解码

一、urlencode golang下可以使用net/url模块实现urlencode和urldecode操作。具体实现的函数为url.QueryEscape和url.QueryUnescape,代码如下: 1package main 2import( 3 "fmt" 4 "net/url" 5) 6func main() { 7 var urlStr string = "运维之路" 8 escapeUrl := url.QueryEscape(urlStr) 9 fmt……

Continue reading

goang switch语句中undefined报错处理

同事在研究Grafana reporter,一个通过把页把转化为pdf并可以邮件报告的工具。在其中引入的某个模块部分,其调用时发现报错。我对zabbix的东西久未关注了,帮其看了下报错,把报错的模块单独抽离出来单独调用发现其中报”undefined: rows”错误。代码逻辑比较简单……

Continue reading

golang实现google动态认证

网上论坛上看到的域外某大神实现的google 二次验证动态码。这个之间在其他应用上我也有应用过,包括本站在好多年前也已用上该技术,不过通过golang来实现一直没了解,刚好手头的一个小工具,想加上该功能,就先找到了如下代码: 1package main 2import ( 3 "crypto/hmac" 4 "crypto/sha1" 5 "encoding/base32" 6 "fmt" 7 "os" 8 "strings" 9 "time" 10) 11func toBytes(value int64) []byte { 12 var result []byte 13……

Continue reading

golang操作cmd命令

以下是来自golang社区的一些关于windows下cmd命令操作的示例: 1 、关机、重启 1// 关闭计算机 2func ShutDownEXE() { 3 fmt.Println("关闭主机") 4 arg := []string{"-s", "-t", "20"} 5 cmd := exec.Command("shutdown", arg...) 6 d, err := cmd.CombinedOutput() 7 if err != nil { 8 fmt.Println("Error:", err) 9 return 10 } 11 fmt.Println(string(d)) 12 return 13} 14// 重启计算机 15func ReShutDownEXE() { 16 fmt.Println(……

Continue reading

sync.WaitGroup使用遇到的坑

一、问题 最近在写的一个小工具,需要使用到 goroutine 之间的同步等待问题。之前也写过 golang channel与sync.WaitGroup同步 ,当时测试的时候使用了下官方示例也可以正常执行,不过最近在该工具使用时调用该示例的方法进行使用时,发现出现了无法正常退出的问题。见下图: sync-waitgroup 上面是使用跟踪工具跟……

Continue reading

golang读写excel

本测试中使用的第三方库为:https://github.com/tealeg/xlsx ,其项目页上介绍“ ”Google Go (golang) library for reading and writing XLSX files. You should probably also checkout: https://github.com/360EntSecGroup-Skylar/excelize “ ,所以也可以引入https://github.com/360EntSecGroup-Skylar/excelize模块进行exce……

Continue reading

gin框架post路由

由于本篇的内容需要涉及到一些静态资源的加载(get方法中打开的html页面),所以我们先进行静态资源配置,这里主要使用LoadHTMLGlob 加载html模板文件,使用StaticFS方法css、js及上传的文件。具体如下: 1func setStaticFS(r *gin.Engine) { 2 r.LoadHTMLGlob("views/*") 3 r.StaticFS("/static", http.Dir("public/static")) 4 r.StaticFS("/upload", http.Dir("upload")) 5} 一、post请求的分类 常用请求……

Continue reading

gin mvc restful api构建

本篇和 golang+gin+mysql构建RESTful API 篇理论上来说是没有本质的区别的。所不同的是,本篇将其代码进行了拆分成了,按mvc架构进行了重新划分。 一、安装依赖包 1go get github.com/go-sql-driver/mysql 2go get github.com/jinzhu/gorm 3go get github.com/gin-gonic/gin 二、建表语句 1CREATE TABLE `users` ( 2 `id` bigint(20) NOT NULL AUTO_INCREMENT, 3 `username` varchar(255) CHARACTER SET latin1 DEFAULT NULL, 4 `password` varchar(255) CHARACTER SET latin1 DEFAULT NULL, 5 PRIMARY KEY (`id`) 6) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4; 三、代码……

Continue reading

Latest articles

Categories

Tags

ACL AD AES AI AWS Ansible Atlassian Azure BMC Blockchain Brocade CDH5 CL210 Cobbler Confd C语言 DDOS DISTINCT DNS EKS ELK GCP Ghost Git Glusterfs Go Godaddy Grafana HBA HCIE Hotspot HttpWatch IBM IIS IOS InfluxDB Ingress InnoDB JavaScript Jinja2 KVM Keepalived Mplayer MySQLdb Netlify OpenResty PM PostgreSQL QoS RH318 RH442 RHCA RHCE RHEV RSA SRE SecureCRT Statuscode SublimeText2 TC Telecom Tencentcloud VBA aira2 alpine android anpic apache apm apparmor appfog apr apt-get aria2 array atop audit awk awstats axel backdoor backup bamboo bash bat benchmark bigdata bin bind bitwise book bootstrap bsd c1000 cache capistrano catlog centos centos7 chatops chattr check_mk checkinstall cisco clearall clickhouse cloud-desktop cmdb cms collectd comm compress conver corosync cpu crontab crunchbang css curl date decode dell desktop devops df dhcp diff diskpart django docker dos2unix dpkg drupal etcd excel fail2ban fastcgi fdisk fiddler find firewalld flask flvtool ftp function fuser geek gin github gitlab glances golang google gooupadd graphviz gravatra grep grub2 hadoop haproxy hardware heartbeat helm hexdump hhvm history html http/html/web httplogs https huawei huaweicloud hugo icmp iconv ifconfig inotify iopp ipmitool iptables iredmail iscsi isito it-news java jdk jenkins jira join joomla k3s k8s kdump kernel kingate lamp last leetcode lib light-http linux linux高级篇 ln ls lsi lsof lvm lvs mac mail man mark markdown matplotlib maven memcached microservice mimikatz mkdocs mkpasswd mmonit mod_jk mongodb monit monitor mono moodle mosh mount mpm mrtg mtr my.cnf mysql mysqlbinlog mysqld_multi mysqldump mysqlhotcopy nagios nc nethogs nexus nfs nginx nmon nocatlog node.js nrpe ntfs ntop ntp obs ocr open-falcon openbox opencv openldap openssl openstack oracle oswatch paas pacemaker pam pandas parted pcp pcre pdf percona perl pexpect pgrep php php-fpm ping plsql develope postfix powershell prettify proc prometheus puppeteer pushd pwgen pxe pyecharts python python模块 radmin raid rdesktop read redhat redis redmine regex rh134 rhel7 rhel8 rm rman rootkit route rpm rpmforge rrdtool rsync rsyslog safe saltstack samba scapy screen sed selenium selinux seo seq session set shc sheepdog shell shopt sitemap skydns smokeping snffier snmp socket soft sort spider sql sqlserver squid ss ssh sshpass strace strings su sudo suse svn sysbench syslog-ng sysstat systemd t tar tcpcopy tcpdump tech telnet tengine test testlink threads time tmux tomcat touch tr tsar twisted ubuntu udev ulimit unix unixbench user-agent useradd varnish vbs vercel vi vim visudo vmstat vmware vnc voice vpn vscode vsftp vsftpd vue watchdog web webcam webistrano wget wiki windows wol wordpress workshop wsl x-windows xampp xcache xmllint xtrabackup yule yum zabbix zeromq zip zonetime zookeeper 下载工具 云主机 云原生 代理 加密 古意 吐槽 圈里圈外 娱乐 字符串函数 安全 平台架构 意林 推理 提权 故事汇 故障案例 数据结构 每日看点 民国史 生活 科学记录 站长管理工具 算法 管理 网站架构 翻墙 股票 行业 诗韵 负载均衡 远程管理 面试题

Links

Meta