sql >> Databáze >  >> NoSQL >> Redis

Jak přesměrovat výstup předplatného redis

Je to proto, že nedochází k automatickému vyprázdnění stdout, když redis-cli zobrazí zprávy spojené s předplatným. Takže poslední zprávy před zastavením redis-cli se ve výstupním souboru nezobrazují.

Neexistuje žádná možnost, kterou byste mohli použít k vynucení systematického vyprázdnění, redis-cli.c je třeba opravit. Ve zdrojovém kódu Redis upravte src/redis-cli.c a najděte následující část kódu. Přidejte chybějící proplachovací řádek.

    if (config.pubsub_mode) {
        if (config.output != OUTPUT_RAW)
            printf("Reading messages... (press Ctrl-C to quit)\n");
        while (1) {
            if (cliReadReply(output_raw) != REDIS_OK) exit(1);
            // The following line must be added
            fflush(stdout);
        }
    }

Jakmile bude redis-cli znovu zkompilováno, mělo by fungovat podle očekávání.




  1. Aktualizujte prvek v poli, pokud existuje, jinak vložte nový prvek do tohoto pole v MongoDb

  2. Mohu se dotazovat MongoDB ObjectId podle data?

  3. Porovnejte pole a vraťte rozdíl

  4. Jak migrovat data Redis™ pomocí Redis-Shake