小编Iva*_*nin的帖子

不同RxJS科目的语义是什么?

该主题的文档很少,很难在那里发现"入口点".

javascript rxjs rxjs5

18
推荐指数
1
解决办法
1万
查看次数

Nginx登录到stderr

我想重定向nginx访问日志,stdout以便能够通过journalctl(systemd)分析它们.

批准的答案也有同样的问题. 将nginx access_log和error_log日志记录到主进程的STDOUT和STDERR 但它对我不起作用.随着/dev/stderr我得到open() "/dev/stderr" failed (6: No such device or address).随着/dev/stdout我得到没有访问日志journalctl -u nginx.

nginx.conf

daemon off;

http {
    access_log /dev/stdout;
    error_log /dev/stdout;
    ...
}
...
Run Code Online (Sandbox Code Playgroud)

sitename.conf

server {
    server_name sitename.com;
    root /home/username/sitename.com;

    location / {
        proxy_pass http://localhost:3000/;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        access_log on;
    }
}
Run Code Online (Sandbox Code Playgroud)

nginx.service

[Service]
Type=forking
PIDFile=/run/nginx.pid
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=nginx
ExecStartPre=/usr/sbin/nginx -t -q -g 'master_process on;'
ExecStart=/usr/sbin/nginx -g 'master_process on;'
ExecReload=/usr/sbin/nginx -g …
Run Code Online (Sandbox Code Playgroud)

logging nginx stderr systemd

12
推荐指数
2
解决办法
1万
查看次数

在Haskell中找到函数源(工作流)

我正在学习Haskell一段时间,所以我决定检查一些受欢迎的项目,以了解它在现实中的样子,并可能对该过程进行逆向工程.

我选择了哈基尔,因为它做了一些我熟悉的事情并且中等复杂.然后我立即坚持这个问题:如何回溯进口?

说,在JavaScript中,每个导入都是显式的.

let Q = require("Q")         // namespace
let {foo} = require("Q/foo") // value
Run Code Online (Sandbox Code Playgroud)

Haskell默认为

import Q 
Run Code Online (Sandbox Code Playgroud)

它会立刻破坏一切,人们似乎真的滥用它.

现在我看一下教程,然后在源头看到我发现我不知道一个或另一个函数的位置,也不知道除了搜索之外如何发现它.

是否有一些技巧可以发现这种信息,例如发出语法错误,这会显示源文件或其他什么?您如何在工作流程中解决此类任务?

workflow haskell

6
推荐指数
1
解决办法
394
查看次数

Endofunction为Monoid

我正在尝试这个(用于学习目的):

{-# LANGUAGE FlexibleInstances #-}

instance Monoid (a -> a) where
  mempty = id
  mappend f g = f . g
Run Code Online (Sandbox Code Playgroud)

期望id <> id等于id . id

但是,(id <> id) 1我收到此错误:

Non type-variable argument in the constraint: Monoid (a -> a)
Run Code Online (Sandbox Code Playgroud)

我应该改变什么来运行它?

这只是为了更好地理解monoids和Haskell类型类,而不是用于任何实际用途.

haskell monoids

4
推荐指数
1
解决办法
358
查看次数

Crontab + Journalctl:额外消息

免责声明:以下描述了在 CentOS 7 中出于学习目的所做的事情。

我想将 crontab 作业的输出重定向到journalctl. 当我有以下记录时,它只是向 root 用户发送邮件。

# crontab -l
* * * * * echo "Hello World"
Run Code Online (Sandbox Code Playgroud)

我读过有关systemd-cat哪个可以执行一个进程,将其输出通过管道传输到日志。所以我做了这样的:

# crontab -l 
* * * * * systemd-cat -t "cron-bot" echo "Hello World"
Run Code Online (Sandbox Code Playgroud)

但现在我每分钟收到两条日志消息:

{
  "_TRANSPORT" : "syslog",
  "SYSLOG_IDENTIFIER" : "CROND",
  "MESSAGE" : "(root) CMD (systemd-cat -t \"cron-bot\" echo \"Hello World\")",
  "_CMDLINE" : "systemd-cat -t cron-bot echo Hello World",
}
{
  "_TRANSPORT" : "stdout",
  "SYSLOG_IDENTIFIER" : "cron-bot",
  "MESSAGE" : "Hello World",
  "_COMM" : …
Run Code Online (Sandbox Code Playgroud)

cron logging journal systemd

4
推荐指数
1
解决办法
1万
查看次数

TypeScript 中重载函数的类型约束

所以我可以重载函数:

function myFunc(x : number) : number
function myFunc(x : string) : string
function myFunc(x : number | string) : number | string {
  if (typeof x == "string") {
    return x + "1"
  } else {
    return x + 1
  }
}
Run Code Online (Sandbox Code Playgroud)

它有效:

const x = myFunc(1)   // correctly inferred as number
const y = myFunc("1") // correctly inferred as string
Run Code Online (Sandbox Code Playgroud)

此语法但不保护重载实现中的混合类型:

function myFunc(x : number) : number
function myFunc(x : string) : string
function myFunc(x : number | …
Run Code Online (Sandbox Code Playgroud)

typescript

4
推荐指数
1
解决办法
72
查看次数

标签 统计

haskell ×2

logging ×2

systemd ×2

cron ×1

javascript ×1

journal ×1

monoids ×1

nginx ×1

rxjs ×1

rxjs5 ×1

stderr ×1

typescript ×1

workflow ×1