Skip to content
Snippets Groups Projects
Select Git revision
  • f24c20c1597d8cd0ce1c08a1fec635c5adc9f209
  • main default protected
  • devcontainer-support
  • print-signal
  • v0.0.6
  • v0.0.5
  • v0.0.4
  • v0.0.3
  • v0.0.2
  • v0.0.1
10 results

main.go

Blame
  • main.go 632 B
    package main
    
    import (
    	"log"
    	"os"
    	"os/signal"
    	"syscall"
    
    	"github.com/syndtr/goleveldb/leveldb"
    )
    
    func main() {
    	var db *leveldb.DB
    
    	if d, err := leveldb.OpenFile(conf[dbPath], nil); err != nil {
    		log.Fatalf("cannot open database %q: %v", conf[dbPath], err)
    	} else {
    		db = d
    	}
    	defer func() {
    		if err := db.Close(); err != nil {
    			log.Printf("cannot close database %q: %v", conf[dbPath], err)
    		}
    	}()
    
    	sig := make(chan os.Signal, 1)
    	signal.Notify(sig, os.Interrupt, syscall.SIGTERM, syscall.SIGHUP)
    
    	if err := serve(sig, db); err != nil {
    		log.Printf("cannot serve: %v", err)
    	}
    
    	log.Println("application exit")
    }