首页
学习
活动
专区
圈层
工具
发布

iOS-创建自己的日志系统

今天说说怎么创建自己的日志系统 先看下Xcode自己的日志(这里说的NSLog) ?...系统自带的NSLog打印的信息只有简单的 时间 / 项目名称 / 打印内容 内容比较简单, 很难做分类管理和写入文件 或者上传等等....今天我们借用CocoaLumberjack 来自定义自己的日志系统, 最终实现的效果为: #1. Log信息分类 #2. 时间 #3. 产生log的类 #4. 产生log所在方法名 #5....好了, 下面来说说怎么实现的 首先我们先看下CocoaLumberjack的基本用法 Pod导入 pod 'CocoaLumberjack' 新建pch文件, 并添加: #import <CocoaLumberjack...还不能上线上传, 如果要上传有两种方式: 1>直接获取log文件地址, 上传 2>创建一个管理类, 来统一管理日志的关闭和启用 获取日志文件地址的方法: customFileLogger.currentLogFileInfo.filePath

2K41
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Nginx日志文件格式及切割日志文件

    作为Web服务器而言,日志是必不可少的也是需要经常查看的。此篇就来介绍下如何自定义Nginx中的日志格式以及使用crontab计划任务来做到每天切割一次日志文件从而做到方便管理。...在Nginx中日志文件是由log_format这个指令来定义的,它的语法如下: log_format    name    format ##    name:指的是日志格式的名称(后面调用) ##   ...-) 自定义日志就结束了,接下来就是切割日志文件并且每天保存一份当天的日志文件方法如下: 首先将原来的日志文件重命名 mv test1.access.log test1.2014-12-29.log nginx...  -s reload 这样就可以做到日志文件的切割。...-e 00 00 * * * /bin/bash /usr/local/nginx/bin/logs.sh 这样在每天的夜晚12点就会自动创建备份文件了,如果要对错误日志也每天备份的话按照上面的内容修改即可

    1.4K10

    解决php总是出现root用户创建的日志文件的奇怪现象

    解决php总是出现root用户创建的日志文件的奇怪现象 2018-12-17 之前总是遇到php日志文件,创建用户是root的情况。...今天寻根溯源了一下,发现时因为定时任务执行过程中创建的文件都是root的,且我定时任务的执行者都是root。...这样也就不奇怪了,想办法把定时任务的执行者换一下就可以了~ 一般上我是用root登录后,直接 crontab -e 开始编辑定时文件。...这样的话,定时任务的执行者就是当前登录用户(root) 所以需要用这个命令  crontab -e -u 用户名 这里我使用了 crontab -e -u apache 当然你也可以使用  不过个人觉得...crontab -e -u nobody 那么文件用户问题解决了,那么还怕写没权限写吗? 完~

    1.5K20

    文件锁的使用浅析_文件加密软件

    大家好,又见面了,我是你们的朋友全栈君。 概述 在多数unix系统中,当多个进程/线程同时编辑一个文件时,该文件的最后状态取决于最后一个写该文件的进程。...对于有些应用程序,如数据库,各个进程需要保证它正在单独地写一个文件。这时就要用到文件锁。 文件锁(也叫记录锁)的作用是,当一个进程读写文件的某部分时,其他进程就无法修改同一文件区域。...能够实现文件锁的函数主要有2个:flock和fcntl。 早期的伯克利版本只支持flock,该函数只能对整个文件加锁,不能对文件的一部分加锁。...:判断由flockptr所描述的锁是否会被另一把锁所排斥(阻塞),如果存在一把锁阻止创建由flockptr所描述的锁,由该现有锁的信息将重写flockptr指向的信息。...如果程序尝试获得的锁无法被授予,调用进程会进入休眠直到进程获得锁或者信号中断 注意:用F_GETLK 测试能否创建一把锁,然后用F_SETLK尝试建立锁之间并非原子操作,也就是说两次调用之间有可能另一进程插入并创建了相同的锁

    97130

    Oracle的日志及日志文件

    在Oracle数据库中,日志文件是用于数据恢复和事务重演的,这个日志文件对于Oracle数据库的作用是致命的,从这个角度来说,此日志完全不同于其他其他软件层面理解上的日志。...很多Oracle的数据库灾难发生于日志文件的误操作,有人误删除、误清空、误覆盖,此类错误层出不穷,引发了一次又一次的故障。...对于生产系统,出现在线日志覆盖的情况,可能是灾难性的,最近遇到了几起和日志有关的故障,感触刻骨铭心。...所以,我曾经建议Oracle,将日志文件的缺省后缀改掉,舍log而取dbf,也将日志文件的名字改为日志数据文件,这样或能警醒且减少部分故障。...Oracle的日志文件是重中之重,轻忽不得,各位DBA们共勉。

    1.6K120

    jasypt加密命令_java文件加密解密

    大家好,又见面了,我是你们的朋友全栈君。 jasypt是springboot项目中对properties进行加密的,该加密是双向的且可以配置秘钥。...可以加密的数据为 system property environment property command line argument application.properties yaml properties...other custom property sources 我们配置文件中经常出现许多敏感信息,比如数据库账号密码,版本控制账号密码等。...配置秘钥 jasypt: encryptor: password: 你的秘钥 设置秘钥后,jasypt会根据你设置的秘钥,然后根据一定的算法对你要加密或解密数据进行加解密。...比如我们加密的数据库账号密码,如果我们直接拿密文肯定是连不上我们的数据库的,但是jasypt在启动的时候自动为我们做了解密工作,实际上我们还是拿着解密后的明文来访问数据库的。

    2.3K20

    【C 语言】文件操作 ( 文件加密解密 | 加密解密原理 | 对称加密 | 非对称加密 | 散列函数 )

    文章目录 一、加密类型 二、加密解密三要素 三、加密应用场景 四、散列函数 一、加密类型 ---- 数据加密操作 分为 对称加密 和 非对称加密 ; 对称加密 : 加密密钥 与 解密密钥 相同 ;...非对称加密 : 加密密钥 与 解密密钥 不同 ; 二、加密解密三要素 ---- 加密 / 解密 3 要素 : 明文 密钥 密文 明文 通过 密钥 加密成 密文 , 密文 通过 密钥 解密成 明文...; 三、加密应用场景 ---- 对称加密 : 特点 : 运算速度快 , 加密的强度弱 , 容易被破解 ; 应用场景 : 适合 大量数据加密 ; 常用算法 : DES , 3DES , AES ; 非对称加密...: 特点 : 运算速度慢 , 加密的强度高 , 不容易被破解 ; 应用场景 : 适合 少量数据加密 ; 常用算法 : RSA , ECC ; 四、散列函数 ---- 通过 散列 / 哈希 算法 , 将数据经过运算..., 得到固定长度的 指纹 数据 , 不同的数据得到的指纹数据不同 ; 该类型算法是不可逆的 ; 常用算法 : MD5 , SHA1 ;

    5.5K20

    如何使用PHP创建完整的日志

    当我们想跟踪Web应用程序中执行的事件时,我们需要为其保存日志。 主要有2种用于保存日志以跟踪用户事件的方法。一种是保存日志文件,另一种是保存在数据库中。...在本教程中,我将向您展示如何使用PHP保存完整的日志。 这种方法将帮助您添加与在Web应用程序中执行的特定事件有关的完整信息。 让我们看看如何创建完整的日志。...使用数据库存储自定义日志 您可以使用数据库创建表以保存完整的日志 创建数据库表 我们已经创建了数据库或选择了已经存在的数据库。在此步骤中,我们将创建一个表来存储日志。...在此步骤中,我们创建一个功能文件,该文件包含在要添加日志的每个页面上。...创建一个文件名functions.php <?

    1.8K20

    【C 语言】文件操作 ( 文件加密解密 | 加密文件 )

    文章目录 一、文件加密解密操作 1、加密整 4096 字节的数据 2、加密小于 4096 字节的数据 二、完整代码示例 1、文件加密操作 2、DES 加密解密头文件 3、第三方 DES 加密解密函数库源码...一、文件加密解密操作 ---- 准备 2 个文件 , 一个是原始文件 , 一个是加密后的文件 , 将原始文件进行加密 , 然后将加密后的数据输出到加密文件中 ; // 要加密的文件...(input_file, output_file); 1、加密整 4096 字节的数据 打开输入文件 , 每次从输入文件中 , 读取 4096 字节数据 , 将这 4096 字节数据加密 , 然后写出到加密文件中...4096 字节的数据 如果读取的数据小于 4096 字节 , 会退出循环 , 执行下面的业务逻辑 ; 下面的函数主要是 加密小于 4096 字节数据 , 加密完成后 , 将加密数据输出到文件中 ;...* @param input_file 被加密的文件 * @param output_file 加密后的文件 * @return */ int file_encoder(const char

    10.2K31
    领券