A search engine for IRC logs based on Lucene
Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.
Abhinav Sarkar 75004747b3 Some more scalafication 6 år sedan
src/main/scala/net/abhinavsarkar/ircsearch Some more scalafication 6 år sedan
.gitignore Initial commit, created a basic server based on netty 6 år sedan
.travis.yml Added travis yml file 6 år sedan
README.md Added README 6 år sedan
irc-search.conf Moved out configuration to external file 6 år sedan
pom.xml Some more scalafication 6 år sedan

README.md

A search engine for IRC logs. Based on Lucene and Netty. Runs as an HTTP server, exposing REST endpoints for indexing and searching.

Build and Run

First install Apache Maven. Then execute this command to run the server at port 9090:

mvn package && java -cp target/dependency/*:target/* net.abhinavsarkar.ircsearch.Server 9090

Index chat lines

$ cat ireq | json_pp
{
   "botName" : "some",
   "chatLines" : [
      {
         "timestamp" : 12312312312,
         "user" : "abhinav",
         "message" : "hi"
      },
      {
         "timestamp" : 12312312312,
         "user" : "abhinav",
         "message" : "hi"
      }
   ],
   "channel" : "as",
   "server" : "ima"
}

$ curl -X POST -d @ireq localhost:9090/index

Search

$ cat sreq | json_pp
{
   "botName" : "some",
   "page" : 0,
   "query" : "hi user:abhinav",
   "channel" : "as",
   "server" : "ima",
   "pageSize" : 10
}

$ curl -X POST -d @sreq localhost:9090/search -s | json_pp
{
   "page" : 0,
   "query" : "hi user:abhinav",
   "channel" : "as",
   "pageSize" : 10,
   "botName" : "some",
   "chatLines" : [
      {
         "timestamp" : 12312312312,
         "user" : "abhinav",
         "message" : "hi"
      },
      {
         "timestamp" : 12312312312,
         "user" : "abhinav",
         "message" : "hi"
      }
   ],
   "server" : "ima",
   "totalResults" : 24
}