log文件

Nginx web基础入门

狂风中的少年 提交于 2019-12-07 11:39:44
目录 Nginx web基础入门 如何升级nginx或者添加功能 使用systemd管理nginx nginx相关配置文件 nginx的配置文件详解 日志格式 game日志记录实战 日志切割 手写虚拟主机 1.编辑虚拟主机,创建查询目录 2.上传,检查 3.检查 nginx 的语法是否存在错误 4.重载 Nginx [reload|restart] 5.设置hosts(基于域名) 6.检测是否设置成功 7.浏览器检测 虚拟主机 Nginx web基础入门 两种部署方式: 1)yum安装 更改官方源: [root@web ~]# vim /etc/yum.repos.d/nginx.repo [nginx] name=nginx repo baseurl=http://nginx.org/packages/centos/7/$basearch/ gpgcheck=0 enabled=1 安装依赖包 yum install -y gcc gcc-c++ autoconf pcre pcre-devel openssl-devel make automake 安装nginx-1.16.0 yum install -y nginx 启动nginx并设置开机自启 [root@web01 ~]# systemctl start nginx [root@web01 ~]# systemctl

Nginx 常用基础模块

痞子三分冷 提交于 2019-12-07 11:36:28
文章目录 Nginx 常用基础模块 Nginx日志管理 nginx日志切割 Nginx目录索引 Nginx状态监控 Nginx访问控制 Nginx访问限制 Nginx 请求限制配置实战 Nginx Location Nginx 常用基础模块 Nginx日志管理 Nginx有非常灵活的日志记录模式,每个级别的配置可以有各自独立的访问日志。日志格式通过log_format命令定义格式。 log_format详解 在nginx默认的配置文件中,log_format已经将日志格式定死,但是我们可不可以修改呢? 1.log_format的作用是定义日志格式语法 配置语法: 包括: error.log access.log Syntax: log_format name [escape=default|json] string ...; Default: log_format combined "..."; Context: http 2.nginx默认日志格式语法如下: log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; 3

android NDK开发入门。

心已入冬 提交于 2019-12-07 09:37:45
关于 NDK 的使用,首先需要了解一个概念: JNI 。什么是 JNI ? 2.1 Hello-jni 这个是 NDK 自带的例子程序,安装官方网站的说明,一步步来,应该没有什么问题,这里就不细说了。 2.2 My God I did it 学习的第一步,就是模仿。我们依照上面 Hello-jni 的例子,在创建自己的 NDK 程序。在此过程中,对相关的内容和概念进行分析和说明。 首先, 在工程的 src 夹子下用来放置 Java 文件。我们打开 Eclipse ,然后新建一个 Android 工程,工程名就叫 MyJNI ,工程路径选择我们创建的 NDK 的路径。这里需要注意的是,工程名,包名等,需要和上面的 c 文件中的保持一致。 (Java _ com_jpf_myjni _ MyJNI _ stringFromJNI) 工程建立好后,编辑 src/com/jpf/myjni/MyJNI.java 文件,内容如下: package com.jpf.myjni; import android.app.Activity; import android.widget.TextView; import android.os.Bundle; public class MyJNI extends Activity { /** Called when the activity is

关于启动Tomcat时控制台出现的问题

ε祈祈猫儿з 提交于 2019-12-07 03:52:57
我的Tomcat版本:apache-tomcat-6.0.30,我在Myeclipse中启动Tomcat时控制台显示: log4j:ERROR setFile(null,true) call failed. java.io.FileNotFoundException: c:/emall.log (客户端没有权限。。。) 我估计是我前几天把C盘中的emall.log文件误删了。 解决办法: 于是我打算在C盘中重建一个该文件。但是重建时显示: 错误0x80070522:客户端没有所需的特权。 解决办法: 以管理员身份执行cmd命令提示框,输入:icacls c:\ /setintegritylevel M 然后即可在C盘创建文件,创建emall.log文件后,在Myeclipse中重启Tomcat。 此时问题得到解决。 来源: oschina 链接: https://my.oschina.net/u/614348/blog/658024

Android NDK GPIO操作(pcduino 装Android系统)

泪湿孤枕 提交于 2019-12-07 01:17:32
开发工具: Eclipse 开发语言: Java和c++ Pcduino跑Android系统让我兴奋了很长时间,也由此幻想了很多有趣的应用。例如 结合Yeelink做远程加电控制;结合微信开放接口与传感器向好友推送信息等等。 当然这些有趣的应用都离不开PCDUINO硬件的操作。那么在Android系统下怎么来操作硬件呢?我想大概有以下几种方式: 1、利用Arduino 库自己写c++程序然后编译成可执行文件,然后把可执行文件拷到PCDUINO中,添加权限,在模拟中端里运行可执行文件。 优点:Arduino库函数完善,非常容易操作。 缺点:貌似和Android开发的应用不能完美的结合。 2、利用Android 的Jni编程,直接驱动GPIO。 优点:开发工具简单,利用Eclipse进行交叉编译,同时编译Java和c++代码。并且把硬件操作函数生成.so文件直接打包APK中。 下面我们利用ANDROID NDK来开发一个简单实例: " 光电开关控制UI上的灯泡亮灭" 第一步:开发环境的搭建 1、安装Eclipse 2、安装ADT-v20插件(该版本已经直接支持Native编程) 3、安装CDT(编译c++代码) 3、安装android-ndk-r8e(该版本支持Windows,不用在Cygwin下编译了) 按照这种模式搭建的开发环境用起来非常上手,java和c++程序直接交叉编译

Logback常用配置

只愿长相守 提交于 2019-12-06 22:02:22
Logback常用配置 1.Logback配置指定打印类或包到指定文件 1.2.完整配置 2.去除指定包或类不打印日志 2.1注意Spring框架打印的是缩写,需要全局找到那个类 1.Logback配置指定打印类或包到指定文件 < appender name = " WX_PAY_FILE " class = " ch.qos.logback.core.rolling.RollingFileAppender " > <!-- 正在记录的日志文件的路径及文件名 --> < file > ${log.path}/wx_pay.log </ file > <!--日志文件输出格式--> < encoder > < pattern > %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level ${PID:- } --- %logger{50} : %msg%n </ pattern > < charset > UTF-8 </ charset > </ encoder > < rollingPolicy class = " ch.qos.logback.core.rolling.TimeBasedRollingPolicy " > < fileNamePattern > ${log.path}/pay/log-pay-%d{yyyy-MM-dd}.%i

mysql5.7的主从切换

♀尐吖头ヾ 提交于 2019-12-06 17:03:28
mysql5.7的主从切换 主库: master 10.11.0.211 从库: slave 10.11.0.210 目标:主从切换,将slave切换为master,master切换为slave 一、使用innobackup进行主从同步设置 # 应用的连接数据库的账号配置 grant select,insert,update,delete on task.* to task_user@"%" identified by "cmslU6WFkX2pBylwINy2T"; # 修改root密码 update mysql.user set authentication_string = password('root'), password_expired = 'N', password_last_changed = now() where user = 'root'; # 设置主从同步: # 备份主库 innobackupex --defaults-file="/etc/my.cnf" --user=root -p'root' --socket=/tmp/mysql.sock --apply-log --use-memory=1G /opt/2019-12-06_15-51-53 # 应用事务 innobackupex --defaults-file="/etc/my.cnf" -

【产品环境】使用ELK搭建日志系统

北城余情 提交于 2019-12-06 16:35:36
随着业务不断完善与发展,日志的重要性稳步上升。我们需要从日志中排查错误,以及分析用户行为,为业务发展提供参考意见。因此,需要一套专门的日志系统帮助我们收集、分析、处理日志。 以前我曾经写过一个logstash的blog: http://my.oschina.net/abcfy2/blog/372138 ,版本比较低,但是logstash的配置没变过。此篇blog将比上述blog更详尽一些,扩展到产品环境搭建完整的日志系统,但是logstash本身的配置不多做介绍,因为旧Blog已经介绍的比较详细了。 本篇Blog主要介绍我们目前使用的日志系统的总体架构和部分配置。Kibana的使用暂时不在本篇Blog的覆盖范围之内,以后也许会单独写一篇kibana的使用,读者也可以参考饶琛琳的《ELK stack权威指南》一书的 相关章节 。 本篇Blog的内容也并非自己独自完成,关于log4j 1.2部分的配置和使用是开发同事共同探究实现的。 最后要说的一点是,日志系统的实现并不只是运维的工作,开发也需要配合,规范日志格式,规范项目埋点,便于排查问题。最后归结与一点,要有执行力,要有人推动,不能随随便便的打日志,更不允许产品环境有乱七八糟的 println 这种调试方式的日志输出。 关于ELK ELK Stack指代三个独立的组件: Elasticsearch,Logstash,Kibana

MySQL Last_SQL_Errno: 1062----经典错误,主键冲突

倖福魔咒の 提交于 2019-12-06 14:36:36
一、基础信息 1. Centos7.4 2.MySQL 5.7.21 3.基于gtid的复制 二、异常描述 误把从节点当成主节点插入一条数据,同一条数据在主、从节点插入都进行了一次插入操作,导致主键冲突,slave下的SQL线程异常。 建议设置从库为只读: set global read_only=1;--针对普通MySQL数据库用户设置为只读 set global super_read_only=1;--针对super类MySQL数据库用户设置为只读,比如root用户 my.cnf 文件设置永久只读 read_only=1 super_read_only=1; 三、处理过程 1.查看报错信息-- 报错大致如下 mysql> show slave status \G *************************** 1. row *************************** Slave_IO_State: Waiting for master to send event Master_Host: 192.168.1.1 Master_User: repuser Master_Port: 3306 Connect_Retry: 60 Master_Log_File: mysql_binlog.000023 Read_Master_Log_Pos: 2266930

动态加载js文件的正确姿势

十年热恋 提交于 2019-12-06 14:22:01
最近在做一个为网页生成目录的工具 awesome-toc ,该工具提供了以jquery插件的形式使用的代码,也提供了一个基于 Bookmarklet (小书签)的浏览器插件。 小书签需要向网页中注入多个js文件,也就相当于动态加载js文件。在编写这部分代码时候遇到坑了,于是深究了一段时间。 我在这里整理了动态加载js文件的若干思路, 这对于理解异步编程很有用处,而且也适用于Nodejs 。 代码整理在了 https://github.com/someus/how-to-load-dynamic-script 。 硬编码在html源码中的script是如何加载的 如果html中有: <script type="text/javascript" src="1.js"></script> <script type="text/javascript" src="2.js"></script> 那么,浏览器解析到 <script type="text/javascript" src="1.js"></script> 会停止渲染页面,去拉取 1.js (IO操作),等到 1.js 的内容获取到后执行。 1.js执行完毕后,浏览器解析到 <script type="text/javascript" src="2.js"></script> 进行和 1.js 类似的操作。