Giter Site home page Giter Site logo

visitlog's Introduction

VisitLog

A very simple analytics service with no dependencies, written in golang. This is what I run on my blog/homepage to keep track of visits. I could use a third-party analytics service but I abhore sending data about my users to random companies.

I am not really expected that this will meet anyone elses needs. If you are looking for a full featured analytics package then better options exist.

You can see the data that visitlog collects: sheep.horse Visitor Statistics

Goals

  • Completely stand alone service - a single executable with no compile time or run time dependencies. Requires no database or thirdparty libraries.
  • Very light data gathering. Does not collect information about the user apart from the fact that they visited the page. Does not collect IPs or browser data. No attempt is made to track recurring visits.
  • Self-hosted
  • Very simple data structures
  • Easily modifiable
  • Safe and secure
  • Reasonably scalable, where "reasonably" means able to handle say 10000 hits per day. This is pathetic for big sites but more than enough for my needs.

See this blog post for my initial rationale.

Installation

Compile the project. The linuxbuild.sh file provides a simple way to compile using a docker container but compiling natively should be as simple as go build.

Copy the executable to wherever you want to run it from.

Create a file named visitlogdb in the same directory. Edit it so that it contains a simple empty json object.

{}

This is somewhat of a misfeature. Visitlog should create this file itself on first startup.

A systemd .service file is provided in the systemd directory.

Undocumented Features

This functionality exists but is so far undocumented.

  • Quizzes

visitlog's People

Contributors

andrewstephens75 avatar

Stargazers

Enrico Foltran avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.